Skip to content

Latest commit

 

History

History
55 lines (45 loc) · 2.62 KB

README.md

File metadata and controls

55 lines (45 loc) · 2.62 KB

SoLoader

Build CI License Maven Central

SoLoader is a native code loader for Android. It takes care of unpacking your native libraries and recursively loads dependencies on Android API 23 and earlier, since those old OS versions do not support all of that functionality out of box.

Requirements

SoLoader is useful for applications running on Android API 23 and earlier. SoLoader should not be used on Android API 24 and above unless the app is delivered as Exopackage, requires Android Native Library Merging or uses Superpack compression.

Including SoLoader in your apps

You can use prebuilt aars or fetch SoLoader from Maven repository by adding the following to your build.gradle file:

implementation 'com.facebook.soloader:soloader:0.13.0+'

Building from source

To build the Android library and its two Java dependencies with Gradle, install the Android SDK and JDK 17, then run:

./gradlew :soloader:assembleDebug :annotation:jar :nativeloader:jar

The AAR is written to soloader/build/outputs/aar/, and the annotation and nativeloader JARs to their respective build/libs/ directories. Run ./gradlew publishToMavenLocal to publish all three artifacts to your local Maven repository, using the version from the artifacts/ configuration files. The published class files target Java 7, matching earlier SoLoader releases.

The existing Buck build is also available. Once you have Buck installed, run the following commands from the project root directory:

  buck fetch //...
  buck build :soloader

The build command generates buck-out/gen/soloader.aar file.

Join our community

Please use our issues page to let us know of any problems. See the CONTRIBUTING file for how to help out.

License

SoLoader is Apache-2.0-licensed.