chore(android): add 16KB page size compliance for Play Store requirement#30119
chore(android): add 16KB page size compliance for Play Store requirement#30119adnxy wants to merge 19 commits into
Conversation
|
CLA Signature Action: All authors have signed the CLA. You may need to manually re-run the blocking PR check if it doesn't pass in a few minutes. |
…equirement # Conflicts: # package.json
There was a problem hiding this comment.
Cursor Bugbot has reviewed your changes and found 1 potential issue.
❌ Bugbot Autofix is OFF. To automatically fix reported issues with cloud agents, have a team admin enable autofix in the Cursor dashboard.
Reviewed by Cursor Bugbot for commit 4f33a58. Configure here.
🔍 Smart E2E Test Selection
click to see 🤖 AI reasoning detailsE2E Test Selection: This PR makes Android-specific native library changes targeting 16KB memory page size support (Android 15+ compatibility):
Risk is HIGH because:
Tags selected cover the key flows that depend on these crypto libraries:
Performance Test Selection: |
|




Description
Google Play Store requires all apps with native/NDK code to support Android's 16KB page size.
Several of our native crypto dependencies ship pre-built .so libraries or CMake configs that only target the legacy 4KB page size, which will block Play Store submissions.
Patches three native crypto libraries (react-native-fast-crypto, react-native-quick-base64, react-native-quick-crypto) to pass -DANDROID_SUPPORT_FLEXIBLE_PAGE_SIZES=ON to their CMake builds.
Bumps the OpenSSL dependency in react-native-quick-crypto from 3.3.2 to 3.3.2-1 for 16KB-aligned binaries.
Removes the pre-built ecies.aar which contained non-16KB-aligned native libraries.
Changelog
CHANGELOG entry: [CHANGED] Patched native crypto dependencies for Android 16KB page size compliance (Play Store requirement) and removed pre-built ecies.aar
Documentation: https://docs.google.com/document/d/1YKsUvYJhF0YZQzSio6E4JDNhbpE5KtkhGuesL4CklZE/edit?usp=sharing
Related issues
Fixes:
Manual testing steps
Screenshots/Recordings
Before
After
Pre-merge author checklist
Performance checks (if applicable)
trace()for usage andaddTokenfor an exampleFor performance guidelines and tooling, see the Performance Guide.
Pre-merge reviewer checklist
Note
Medium Risk
Touches Android/NDK build configuration and patched third-party native crypto dependencies; misconfiguration could break builds or cause runtime crypto/native loading issues across ABIs.
Overview
Updates patched native crypto dependencies to support Android 16KB page sizes by passing
-DANDROID_SUPPORT_FLEXIBLE_PAGE_SIZES=ONto their CMake builds (and modernizingreact-native-fast-crypto’s Android/NDK config, including AGP/SDK defaults and CMake cleanup).Bumps
react-native-quick-crypto’s OpenSSL dependency to3.3.2-1for 16KB-aligned binaries, switchesreact-native-quick-base64/react-native-quick-cryptoto Yarnpatch:dependencies, and removes the prebuiltecies.aarfrom the Android app dependencies.Reviewed by Cursor Bugbot for commit 4a735b2. Bugbot is set up for automated code reviews on this repo. Configure here.