Issue Description
When submitting a Flutter-based Android app to Google Play Console, the app may be flagged with a warning or error stating it does not support 16 KB memory page sizes. This occurs even if you are already using Agora SDK versions that include 16 KB support.
Platform/SDK
- Platform: Flutter for Android
- Agora RTC SDK: 6.5.0 and later
- Agora Signaling (RTM) SDK: 2.2.5 and later
- Agora Chat SDK: 1.3.1 and later
Error Message
App must support 16 KB memory page sizes
To ensure your app works correctly on the latest versions of Android, Google Play requires all apps targeting Android 15+ to support 16 KB memory page sizes.
Step by Step Solution
Confirm Agora SDK Version Compatibility
First, ensure your project is using Agora SDKs that are 16 KB compliant. The minimum supported versions are:
- agora_rtc_engine: 6.5.0 and later
- agora_rtm: 2.2.5 and later
- agora_chat_sdk: 1.3.1 and later
Open the Android app Gradle File
In a Flutter project, update the Android app module Gradle file, typically located at
android/app/build.gradleor in some sample projects
example/android/app/build.gradleUpdate Android Packaging Configuration
Add the following configuration inside the
android {}block:android { ... packaging { jniLibs { useLegacyPackaging = false } } }Save and Rebuild
Save the Gradle file and rebuild your Flutter Android project.
Resubmit to Google Play
Create a new release build and upload it to the Google Play Console for validation.
Root Cause
While recent Agora SDKs have optimized their native code to be 16 KB compliant, the default behavior of some Android Gradle Plugin versions is to compress native libraries to save space.
Google Play's 16 KB requirement mandates that native libraries (.so files) must be uncompressed and aligned to a 16 KB boundary so they can be memory-mapped directly. Setting useLegacyPackaging = false forces the build system to align these libraries correctly, fulfilling the Android 15 compatibility requirements.
Best Practice
- Keep all Agora SDKs updated to versions that explicitly support 16 KB memory page sizes.
- Review Android Gradle packaging settings before submitting to Google Play.
- Test release builds early against Play Console requirements to catch packaging-related warnings before final submission.