Skip to content

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

@ateek

Description

@ateek

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,

Metadata

Metadata

Assignees

No one assigned

    Labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions