rive-android icon indicating copy to clipboard operation
rive-android copied to clipboard

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

Open ateek opened this issue 4 months ago • 1 comments

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,

ateek avatar Oct 13 '25 14:10 ateek