Realm Java library 16 KB page-size fix: upgrade to 10.19.0
Artifact io.realm:realm-android-library · measured 2026-10-01 · all libraries
fixed
Realm Java library versions up to and including 10.18.0 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 10.19.0; the newest measured, 10.19.0, is aligned.
- Sampled, not exhaustive: 28 of 35 published versions were measured with native code; unmeasured versions in between are unknown.
Measured evidence
| Version | Library file | p_align | File date | Source | |
|---|---|---|---|---|---|
| Last offending | 10.18.0 | jni/arm64-v8a/librealm-jni.so | 4 KB (2^12) | Wed, 07 Feb 2024 04:34:16 GMT | artifact |
| First aligned | 10.19.0 | jni/arm64-v8a/librealm-jni.so | 16 KB (2^14) | Fri, 13 Sep 2024 15:57:15 GMT | artifact |
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 (27)
10.4.0, 10.4.0-RC.1, 10.5.0, 10.5.1, 10.6.0, 10.6.0-BETA.1, 10.6.0-BETA.2, 10.6.1, 10.7.1, 10.8.0, 10.9.0, 10.10.0, 10.11.0, 10.11.1, 10.12.0-transformer-api, 10.13.0, 10.13.1, 10.13.1-transformer-api, 10.13.3-transformer-api, 10.14.0, 10.15.0, 10.15.1, 10.16.0, 10.16.1, 10.16.2, 10.17.0, 10.18.0
Native libraries seen: librealm-jni.so.
The Gradle change
implementation("io.realm:realm-android-library:10.19.0")an aligned version, lowest measured above the last offending one; newer measured versions are aligned too (latest 10.19.0). Check: ./gradlew :app:dependencyInsight --dependency realm-android-library --configuration releaseRuntimeClasspath
Confirm what Gradle actually resolves, since another dependency may pull an older version:
./gradlew :app:dependencyInsight --dependency realm-android-library --configuration releaseRuntimeClasspathRe-verify it yourself
Download the artifact and run the free checker (check16k.py, Python 3, no dependencies):
curl -LO https://repo1.maven.org/maven2/io/realm/realm-android-library/10.19.0/realm-android-library-10.19.0.aar
python3 check16k.py realm-android-library-10.19.0.aarExit 0 = aligned, 1 = an unaligned library found. Better still, run it on your final .aab/.apk.
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)