rive-app / rive-app/rive-android

Rive-android 10.4.2: Native libraries not aligned for 16KB page sizes despite using NDK27

Open
#415 1 comment 3 reactions 0 assignees View on GitHub

Nobody has claimed this yet.

triage
Dominant language
Kotlin
Stars
538
Forks
66
PR merge metrics
No merged PRs in 30d

Description

Description

The Rive Android library version 10.4.2 claims to support 16KB page sizes by using NDK27, but the precompiled native libraries in the AAR are still not properly aligned for
16KB page sizes, causing Google Play Console warnings and potential compatibility issues with Android 15+ devices.

Version Information

  • rive-android version: 10.4.2
  • Android Gradle Plugin (AGP): 8.8.2
  • NDK version: Project uses latest NDK
  • Compile SDK: 35
  • Target SDK: 35
  • Min SDK: 24
Steps to reproduce
  1. Add implementation(libs.rive) with version 10.4.2 to an Android project
  2. Build an APK/AAB targeting Android 15 (API 35)
  3. Analyze the APK with APK Analyzer or upload to Google Play Console
  4. Check the native library alignment warnings

lib/x86/librive-android.so: \e[31mUNALIGNED\e[0m (2**12)
armeabi-v7a/librive-android.so: \e[31mUNALIGNED\e[0m (2**12)

Expected behavior

When analyzing the APK/AAB with Google Play Console or APK Analyzer, all native libraries (.so files) from Rive should show proper 16KB page size alignment (16KB LOAD section alignment) for arm64-v8a and x86_64 architectures.

Additional context

According to Android documentation, NDK r28+ compiles with 16KB alignment by default,

Contributor guide

Open the contributing guide

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

Research direction

Start by reproducing the issue with rive-android 10.4.2 and inspect the AAR's lib/x86/librive-android.so and armeabi-v7a/librive-android.so using APK Analyzer or Google Play Console. Compare the native libraries' LOAD section alignment against the expected 16KB alignment, and confirm that the packaged libraries no longer produce UNALIGNED warnings.

Written by the indexing model from the issue text.

Assessment

Tech stack
android, kotlin
Domain
build-system, mobile
Issue type
Bug
Difficulty
4/5
Estimated time
3-5 days
Activity status
Stale
Clarity
Mostly clear
Newbie friendliness
35/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.