Android 16 KB fix map

Firebase Crashlytics NDK 16 KB page-size fix: upgrade to 19.0.2

Artifact com.google.firebase:firebase-crashlytics-ndk · measured 2026-10-01 · all libraries

fixed

Firebase Crashlytics NDK versions up to and including 19.0.1 that we measured ship 4 KB-aligned native libraries (offending for Google Play's 16 KB page-size requirement). The first measured aligned stable version is 19.0.2; the newest measured, 20.1.1, is aligned.

Caveats

Measured evidence

VersionLibrary filep_alignFile dateSource
Last offending19.0.1jni/arm64-v8a/libcrashlytics-common.so4 KB (2^12)Thu, 30 May 2024 14:39:31 GMTartifact
First aligned19.0.2jni/arm64-v8a/libcrashlytics-common.so16 KB (2^14)Thu, 20 Jun 2024 19:47:36 GMTartifact

p_align is the smallest PT_LOAD segment alignment of the ELF. 16 KB-compatible needs at least 16384 (2^14). Method: min PT_LOAD p_align of arm64-v8a/x86_64 .so inside the published AAR/JAR; aligned = >=16384 for every lib. Dates are repository file times, not official release dates.

Offending versions measured (23)

17.0.0, 17.0.0-beta01, 17.0.0-beta03, 17.0.0-beta04, 17.0.1, 17.1.0, 17.1.1, 17.2.1, 17.3.0, 17.4.1, 18.1.0, 18.2.3, 18.2.6, 18.2.9, 18.2.12, 18.3.1, 18.3.4, 18.4.0, 18.4.3, 18.5.2, 18.6.2, 19.0.0, 19.0.1

Native libraries seen: libcrashlytics-common.so, libcrashlytics-handler.so, libcrashlytics-trampoline.so, libcrashlytics.so.

The Gradle change

implementation("com.google.firebase:firebase-crashlytics-ndk:19.0.2")

an aligned version, lowest measured above the last offending one; newer measured versions are aligned too (latest 20.1.1). Check: ./gradlew :app:dependencyInsight --dependency firebase-crashlytics-ndk --configuration releaseRuntimeClasspath

Confirm what Gradle actually resolves, since another dependency may pull an older version:

./gradlew :app:dependencyInsight --dependency firebase-crashlytics-ndk --configuration releaseRuntimeClasspath

Re-verify it yourself

Download the artifact and run the free checker (check16k.py, Python 3, no dependencies):

curl -LO https://dl.google.com/android/maven2/com/google/firebase/firebase-crashlytics-ndk/19.0.2/firebase-crashlytics-ndk-19.0.2.aar
python3 check16k.py firebase-crashlytics-ndk-19.0.2.aar

Exit 0 = aligned, 1 = an unaligned library found. Better still, run it on your final .aab/.apk.

Need the full map for every library, not just Firebase Crashlytics NDK?

The paid kit ($12, v2) contains the complete measured fix map for all 80+ libraries as JSON and a table, every raw per-version measurement, the spot-check evidence, and the step-by-step guide for Play's 16 KB requirement. This page and the checker script stay free.

Get the kit ($12)