libaums icon indicating copy to clipboard operation
libaums copied to clipboard

Android 16KB page size

Open zKidor opened this issue 5 months ago • 7 comments

Hello, Android 15 has introduced 16KB page size, and Google Play now requires all subsequently submitted APKs to be adapted for 16KB page size. I see that the project already includes modifications for 16KB page size adaptation, but after building the APK and analyzing it with a script, I found that libusb-lib.so and liberrno-lib.so still haven't been adapted for 16KB page size. The build.gradle references are as follows: ​​​​

Image

The script analysis results are: ​​​​​

Image

How can this be resolved?

zKidor avatar Jul 11 '25 09:07 zKidor

Image not sure what you are referring to exactly.

magnusja avatar Aug 17 '25 14:08 magnusja

This is a major hurdle to using this fantastic system to build Android apps for Android 15+. Google Play won't accept any apps that don't adhere to 16kb limit. Android Studio and Gradle compile my app with a warning:

APK app-debug.apk is not compatible with 16 KB devices. Some libraries have LOAD segments not aligned at 16 KB boundaries: lib/arm64-v8a/liberrno-lib.so lib/arm64-v8a/libusb-lib.so Starting November 1st, 2025, all new apps and updates to existing apps submitted to Google Play and targeting Android 15+ devices must support 16 KB page sizes. For more information about compatibility with 16 KB devices, visit developer.android.com/16kb-page-size.

Here's the warning I get for the dependency:

The native library arm64-v8a/liberrno-lib.so (from me.jahnen.libaums:core:0.10.0) is not 16 KB aligned

Will there be a new 0.11.0 version soon to fix this issue? Thank you.

lhsoftware avatar Sep 03 '25 19:09 lhsoftware

The code has already added the 16KB page sizes support in CMakeLists.txt.

target_link_options(usb-lib PRIVATE "-Wl,-z,max-page-size=16384") target_link_options(errno-lib PRIVATE "-Wl,-z,max-page-size=16384")

You can just build the project by yourself and use the aar instead as a temporary fix.

hexise avatar Sep 05 '25 16:09 hexise

@lhsoftware Did u solve it.Im having problem with this 16kb thing, i've tried @hexise solution but it didnt work it may be my fault.

yemir0 avatar Oct 20 '25 21:10 yemir0

Sadly, I had to remove this library altogether. Tbh, I didn't really need after all once I went through my code. If you can build the project yourself as @hexise suggests then it might work but that's quite the leap from a simple import statement :(

lhsoftware avatar Oct 21 '25 13:10 lhsoftware

https://github.com/magnusja/libaums/pull/434 was merged back in June. The 16k deadline for google play has passed now, is there a chance of a fresh release with the changes?

burntcookie90 avatar Nov 03 '25 19:11 burntcookie90

hey folks, we were getting held up by this so i went ahead and forked the lib and built .aars for the core library and libusb

you can find them on the artifacts section here https://github.com/Varo-Foundation/libaums/actions/runs/19049438263

only changes i made were to add the build workflow

burntcookie90 avatar Nov 12 '25 19:11 burntcookie90