Description
Currently, our build process doesn't support custom Android NDK or system versions. I've been planning on slowly adding support based on using Docker build arguments. The draft PR is in #1023. Supporting newer Android versions is much more complex than just a version increment, and will also simplify our upgrade process with breaking version upgrades.
The current logic for using a custom Android version in building a Docker image would be:
cargo build-docker-image aarch64-linux-android \
--build-arg ANDROID_SDK=29 \
--build-arg ANDROID_VERSION=10.0.0_r47 \
--build-arg ANDROID_NDK=r25b
This process is somewhat difficult since we need a minimal build environment, since cloning the entire Android system is extremely large, and would make our images prohibitively large. Due to the interdependencies in Android, this can be quite complex. These will only be tested once except for the default version (which is tested in CI), and only on aarch64-linux-android
.
The status of individual packages is Android SDK and NDK versions is provided here.