I’m currently testing my Unity project for Android 15 compliance (Google Play requirement for 16 KB memory page sizes).
After upgrading to Unity 6000.0.62f1 (which claims to support 16 KB page size by default), I verified my generated .so libraries using google’s bundletool.
However, when checking the arm64_v8a libraries, I found that some Unity-bundled .so files and up to date Firebase .so files (which I just updated and had the same issue in v13.1.0) are still not aligned at 16 KB, which is strange.
Observed Behavior For arm64-v8a I’m having the following output:
Verifying alignment of base-arm64_v8a_2.apk (4)...
49 AndroidManifest.xml (OK - compressed)
4096 lib/arm64-v8a/libFirebaseCppAnalytics.so (BAD - 4096)
57344 lib/arm64-v8a/libFirebaseCppApp-13_6_0.so (BAD - 8192)
4214784 lib/arm64-v8a/libFirebaseCppCrashlytics.so (BAD - 4096)
4251648 lib/arm64-v8a/libFirebaseCppRemoteConfig.so (BAD - 8192)
4321280 lib/arm64-v8a/lib_burst_generated.so (BAD - 12288)
4820992 lib/arm64-v8a/libapplovin-native-crash-reporter.so (BAD - 4096)
5685248 lib/arm64-v8a/libc++_shared.so (OK)
6979584 lib/arm64-v8a/libcrashlytics-common.so (OK)
7847936 lib/arm64-v8a/libcrashlytics-handler.so (OK)
8073216 lib/arm64-v8a/libcrashlytics-trampoline.so (BAD - 12288)
8081408 lib/arm64-v8a/libcrashlytics.so (BAD - 4096)
8314880 lib/arm64-v8a/libdatastore_shared_counter.so (BAD - 8192)
8323072 lib/arm64-v8a/libil2cpp.so (OK)
102420480 lib/arm64-v8a/libmain.so (BAD - 4096)
102428672 lib/arm64-v8a/libswappywrapper.so (BAD - 12288)
102653952 lib/arm64-v8a/libunity.so (BAD - 8192)
126268242 META-INF/BNDLTOOL.SF (OK - compressed)
126269021 META-INF/BNDLTOOL.RSA (OK - compressed)
126270084 META-INF/MANIFEST.MF (OK - compressed)
Verification FAILED
How can I resolve these alignment issues?