Skip to content

Google Play Store is rejecting apps that use flutter_openssl_crypto due to native libraries not supporting Android's 16KB page size requirement. #16

Description

@cmashamolcm

Play Store Error:

Memory page size: Does not support 16 KB

Affected Libraries:

  • libcrypto.so (arm64-v8a and x86_64)
  • libflutter_openssl_crypto.so (arm64-v8a and x86_64)

Verification

Using llvm-readelf to check page alignment:

# Current state (FAILED ❌)
$ llvm-readelf -l libcrypto.so | grep LOAD
  LOAD           0x000000 0x0000000000000000 0x0000000000000000 0x001000 0x001000 R   0x1000

$ llvm-readelf -l libflutter_openssl_crypto.so | grep LOAD
  LOAD           0x000000 0x0000000000000000 0x0000000000000000 0x001000 0x001000 R   0x1000

Both show 0x1000 (4KB alignment) but need 0x4000 (16KB alignment).

Environment

Flutter: 3.38.7
Matrix SDK: 6.0.0
flutter_openssl_crypto: 0.5.0
flutter_vodozemac: 0.4.1
NDK: 28.0.12433566
Target SDK: 35
Min SDK: 21

Current Configuration

android/app/build.gradle.kts:


android {
    ndkVersion = "28.0.12433566"
    
    packagingOptions {
        jniLibs {
            useLegacyPackaging = true
        }
    }
}

android/gradle.properties:
android.native.maxPageSizeSupported=16384

Expected Behavior
Native libraries should be built with 16KB page alignment to comply with Google Play Store requirements (deadline: May 31, 2026).

References
Android 16KB page size guide

Related discussion in matrix-dart-sdk:

famedly/matrix-dart-sdk#2242

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Fields

    No fields configured for issues without a type.

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions