Hi all,
I am having “App must support 16 KB memory page sizes” issue for my apps on Google Play console. Google says;
To ensure that 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.
From 31 May 2026, if your app updates do not support 16 KB memory page sizes, you won't be able to release these updates.
Your latest production release does not support 16 KB memory page sizes.
I also see the details below when I go to latest releases;
Memory page size;
Does not support 16 KB
Libraries that do not support 16 KB:
base/lib/arm64-v8a/libSDL2.so
base/lib/arm64-v8a/libSDL2_image.so
base/lib/arm64-v8a/libSDL2_mixer.so
base/lib/arm64-v8a/libSDL2_ttf.so
base/lib/arm64-v8a/libcrypto1.1.so
base/lib/arm64-v8a/libffi.so
base/lib/arm64-v8a/libmain.so
base/lib/arm64-v8a/libpython3.11.so
base/lib/arm64-v8a/libsqlite3.so
base/lib/arm64-v8a/libssl1.1.so
Does anyone have any idea how to solve it? Wondering if there is a procedure to go thru.
Many thanks in advance.
Best,
Metin
--
You received this message because you are subscribed to the Google Groups "Kivy users support" group.
To unsubscribe from this group and stop receiving emails from it, send an email to kivy-users+...@googlegroups.com.
To view this discussion visit https://groups.google.com/d/msgid/kivy-users/000001dce6c8%24f65251f0%24e2f6f5d0%24%40gmail.com.
Did it however, neither android.ndk = 28c nor android.ndk = 25b worked. I also changed many things on my spec file.
Only 28c was enough to solve this?
To view this discussion visit https://groups.google.com/d/msgid/kivy-users/CAAThf_AcBzAeT1KdvP-%2BwWPb_puE8Qi%3DDrQOF2wty%3DTJ05cdXw%40mail.gmail.com.
Hi Metin,
I completely understand your frustration. Based on my experience, simply tweaking the buildozer.spec or changing the NDK version to 28c or 25b will not be enough to solve this issue. The entire underlying toolchain and build system must work hand in hand to compile and package everything correctly according to Google's new requirements.
I successfully stress-tested this configuration with my own complex face-detection project using native CameraX and Google ML Kit for face detection. Even though I don't publish on the Play Store myself (at least for now), I verified the final .aab output using Google's official bundletool validate and readelf utilities. It passed all structural checks flawlessly, confirming that the 16 KB (0x4000) alignment is strictly enforced and the .so files are properly stored uncompressed.
I have attached my buildozer.spec file that I use for this playstore ready build to this post.
However, as I mentioned, the .spec file is only half the battle. If you are interested in a solution, the approach discussed in this Google Groups thread might be just what you need:
🔗 https://groups.google.com/g/kivy-users/c/Vz7Qh4A4NY8
If you give it a try, I would love to hear from you whether it worked out and if you successfully managed to get your .aab onto the Play Store. Since I build both .apk and .aab files myself but don't plan to publish anything on the Play Store (at least for now), I would be really glad to hear from others if this approach led to their success!
Best regards, Pedro
Dear Pedro,
Many thanks for detailed answer and sharing your spec file. Much appreciated!
I am working on the update for couple of days. While heading the deadline, I never thought it would be this difficult 😊I will definitely give it a try and keep you posted.
Best,
Metin
From: 'pedro h' via Kivy users support <kivy-...@googlegroups.com>
Sent: Tuesday, May 19, 2026 12:30 AM
To: Kivy users support <kivy-...@googlegroups.com>
Subject: Re: [kivy-users] App must support 16 KB memory page sizes
Hi Metin,
--
You received this message because you are subscribed to the Google Groups "Kivy users support" group.
To unsubscribe from this group and stop receiving emails from it, send an email to kivy-users+...@googlegroups.com.
To view this discussion visit https://groups.google.com/d/msgid/kivy-users/9b2da813-29ab-4770-a103-7562e3367ce3n%40googlegroups.com.
Hi Metin,
You're very welcome! Take your time with the updates, and I'll be waiting for your results.
Just out of curiosity: Since I haven't published an app on the Play Store myself yet, I'm always super interested to see how real, live Kivy projects look in production. Under what developer name can I find your apps in the Play Store? I’d love to check them out!
Fingers crossed for your upcoming build and the deadline!
Best regards, Pedro
Hi Pedro,
Here is the link of my apps. Both of them made by Kivy. Not so popular though 😊
https://play.google.com/store/apps/developer?id=Metin+Ko%C3%A7
To view this discussion visit https://groups.google.com/d/msgid/kivy-users/d91b0c92-b665-468d-9755-74f189e2bcd2n%40googlegroups.com.
Hi Pedro and everyone,
Finally managed one of my app’s bloody “16 KB memory page sizes” issue by using procedures below. Memory page size = Supports 16 KB 😊
I am sharing it for those who needed and haven't done this yet.
https://github.com/kivy/python-for-android/issues/3165 see account called Japatup shared 3 weeks ago. I exactly followed these steps to get this done.
Also, please see official Buildozer documentation from here https://buildozer.readthedocs.io/en/latest/installation/#targeting-android for more details.
@Pedro, thanks much for your help my friend.
Best,
Metin
Hi Metin,
That is great news! I am very happy for you that you solved the 16 KB page size issue and successfully updated your apps before the deadline.
Seeing that green checkmark in the Google Play Console must be a huge relief.
I actually already checked out your apps in the Play Store. It is really cool that you already have your own projects live out there. It definitely motivates me to try publishing something myself in the future.
Thank you also for sharing the exact solution and the links with the community. I wish you the best of luck and continued success with your apps!
Best regards, Pedro
To view this discussion visit https://groups.google.com/d/msgid/kivy-users/5d937b27-8f6e-49c2-8c36-56f7b31118f2n%40googlegroups.com.
To view this discussion visit https://groups.google.com/d/msgid/kivy-users/02d90758-377c-4eba-aeb0-09ac06f3f801n%40googlegroups.com.
To view this discussion visit https://groups.google.com/d/msgid/kivy-users/776939fc-7613-420a-bd7d-f778c0db7b0en%40googlegroups.com.
To view this discussion visit https://groups.google.com/d/msgid/kivy-users/39a2d535-1751-4042-95c3-e36e40bb24f4n%40googlegroups.com.
To view this discussion visit https://groups.google.com/d/msgid/kivy-users/75d5280d-a53a-4e7a-a5dc-de50b84f489dn%40googlegroups.com.
To view this discussion visit https://groups.google.com/d/msgid/kivy-users/fec1b947-bfd7-43d1-afba-4a06ca5fff17n%40googlegroups.com.
Hi Lan,
Awesome, thanks for clarifying that! If some of your apps are launching without any issues, we can definitely rule out hardware problems or Android API 36 conflicts. That's actually great news!
When only specific apps crash right after opening, it’s almost always down to missing Python requirements in that project's buildozer.spec.
Here is what usually happens: If your app's code imports an external library (like requests, urllib3, pillow, numpy, etc.) that isn't explicitly listed in the requirements line of your buildozer.spec, APK Builder Studio will still successfully build the APK. However, the moment you open the app on your device, Python crashes in the background with a ModuleNotFoundError.
Could you check the Python code of those crashing apps? Just look at all the import statements at the top of your files and make sure every external library is added to the requirements line in your buildozer.spec, like this:
requirements = python3, kivy==2.3.1, requests, pillow
Once you add the missing packages to the spec and rebuild using APK Builder Studio, those apps should launch right up!
Let me know if updating the requirements fixes it for those specific apps!
Best regards, Pedro
To view this discussion visit https://groups.google.com/d/msgid/kivy-users/09e66891-7a48-43dc-b3c2-5678924efea4n%40googlegroups.com.
To view this discussion visit https://groups.google.com/d/msgid/kivy-users/4174b3de-0e7f-4637-8a6d-74564006d8ffn%40googlegroups.com.
Hi Lan,
Thank you for your feedback and for testing the new version!
No need to worry: the error message regarding port 5555 is purely cosmetic. It does not affect the app's functionality in any way.
Even though this message appears, you can still:
Install APK and AAB files as usual.
Click "Start Debug" – the debugging session will start and work completely fine.
You can safely ignore the error and proceed with your workflow. Let me know if you run into anything else!
Best regards,
Pedro
You received this message because you are subscribed to a topic in the Google Groups "Kivy users support" group.
To unsubscribe from this topic, visit https://groups.google.com/d/topic/kivy-users/pKjGe1eXkbQ/unsubscribe.
To unsubscribe from this group and all its topics, send an email to kivy-users+...@googlegroups.com.
To view this discussion visit https://groups.google.com/d/msgid/kivy-users/CAJiM4H99-3hs8XgoXDUt1CAp6ywfb6dnJTwdTu%2B4xUZr1QO2SQ%40mail.gmail.com.
To view this discussion visit https://groups.google.com/d/msgid/kivy-users/CAJfJuH6tnebzB%3DjN%3DnfcJxgtXJDWs05Si1320N%3DsN3VoFUdDuQ%40mail.gmail.com.
To view this discussion visit https://groups.google.com/d/msgid/kivy-users/14485871-bcd0-4621-b53e-488a27202616n%40googlegroups.com.
Hi Lan,
This error happens when the
python-for-androidcache gets corrupted or incomplete during the download.You can fix this directly in APK Builder Studio:
Go to Screen 2 and make sure your project is selected.
Go to Screen 3 and click the
Clean p4abutton.Start the build again!
This will wipe the corrupted cache so Buildozer can fetch a fresh copy of
python-for-android.
To view this discussion visit https://groups.google.com/d/msgid/kivy-users/CAJiM4H-vfcEWVdvkSakpp__gADQs9ehOb%2B8a0bwKECWBiiJUdQ%40mail.gmail.com.
To view this discussion visit https://groups.google.com/d/msgid/kivy-users/CAJfJuH6uXk_4p34te5oCVzWFsbo1rbNnQdJCmLjBh3tf%2B1DVEw%40mail.gmail.com.
Hi Lan,
Great to hear the clean worked!
For this new error, there are two ways to fix it. You can try either Step 1 or Step 2:
Option 1: The Recommended Fix (easiest)Open your buildozer.spec file and remove the version number from kivy:
Change kivy==2.3.1 to just kivy in your requirements line.
Buildozer will automatically pick and compile the correct recipe for Android.
Option 2: If you specifically need Kivy 2.3.1If you want to keep kivy==2.3.1, you need to tell Buildozer to use the latest python-for-android updates.
Add or make sure this line is in your buildozer.spec:
p4a.branch = develop
After trying either option, just run the build again in APK Builder Studio!
Hi Elliot
Thank you so much for sharing it on the Kivy Discord and Reddit - really appreciate it! Glad you like the tool.
And no pressure at all, but if an experienced Kivy dev like yourself ever happens to poke around in it and spots something worth improving, I'd genuinely love to hear about it.
Thanks again!
Pedro
Hi Lan,
Awesome news! Glad to hear you got it sorted out and successfully built your APK.
Just out of curiosity: Did everything work smoothly in Screen 4 as well when using the Install APK (or AAB) and Start Logcat buttons?
Good luck with your app!
Best regards,
Pedro
To view this discussion visit https://groups.google.com/d/msgid/kivy-users/9bdb8a05-4285-409b-a141-4d0e53f761f1n%40googlegroups.com.
Hi Lan,
Thanks a lot for the great suggestion! You’re completely right—scrolling through long Buildozer logs to find the exact error can be really tedious.
Having a dedicated errors folder or auto-extracting the build errors into a separate log file would make troubleshooting so much easier. I’m definitely taking note of this for the next update!
I’m really glad you like the debugging features so far. Take your time experimenting, and I’m looking forward to your further feedback!
Best regards,
Pedro
To view this discussion visit https://groups.google.com/d/msgid/kivy-users/9c3794c6-4479-494c-8d45-c69260fc9579n%40googlegroups.com.
Hi Lan,
I will be releasing an update for APK Builder Studio in the next 1 to 2 hours that includes a completely overhauled Logcat system!
Please help me test the update: When you open APK Builder Studio in a bit, please let me know if the update pop-up appears automatically at startup and if the download/update process works smoothly for you.
How to test your build with the new update:
Requirements in buildozer.spec: You don't need to specify a Python version like python3.11 in your requirements line! Studio handles the Python environment completely automatically. Just use your normal working spec where the build completes successfully.
Build & Transfer: Run a fresh build and install the APK onto your phone via USB using Studio.
Start Logcat: Before or while opening the app on your phone, start the Logcat stream in Studio.
Why this helps with the black screen: The new Logcat uses precise Process ID (PID) filtering. Instead of cluttering the screen with Android system logs or missing background errors, it captures 100% of your app's internal output. Even if the app doesn't crash and just stays on a black screen, we will now be able to see exact Python tracebacks, missing imports (like KivyMD or materialyoucolor), or render warnings.
Once you've tried it, let me know how the update went and feel free to send over the Logcat output so we can pinpoint why the screen stays black!
Best regards,
Pedro
To view this discussion visit https://groups.google.com/d/msgid/kivy-users/ff99adfa-ab63-4812-a86b-f284200bcbdan%40googlegroups.com.
Hi Lan,
I've made further improvements to the Logcat system, which will be part of today's update on the server starting around 11:00. Since you're already on v1.2.3, the auto-updater should now work normally this time — just accept the update prompt when it appears.
To get a Logcat that's specific to your app (instead of the generic system log), here's what to do:
In this new version, Studio reads your project's buildozer.spec file to figure out exactly which app is running on your phone, so it can filter the log down to just that app's process instead of everything else on the device.
Once you've done that and tested, please send me the full console output again, starting from "Starting Logcat stream" — that way we can see whether it correctly picked up your app's process this time.
Best regards,
Pedro
To view this discussion visit https://groups.google.com/d/msgid/kivy-users/71f2fcd1-b4d7-460e-a088-028d4c589d63n%40googlegroups.com.
To view this discussion visit https://groups.google.com/d/msgid/kivy-users/0dd12fa3-1bbd-4c5f-979b-8e56ad1d30d0n%40googlegroups.com.
To view this discussion visit https://groups.google.com/d/msgid/kivy-users/8315dc38-b3f6-4934-a07d-c59defe1f64en%40googlegroups.com.
To view this discussion visit https://groups.google.com/d/msgid/kivy-users/c8bcdc9b-c124-49d6-b6d9-0de02fd0ebefn%40googlegroups.com.

To view this discussion visit https://groups.google.com/d/msgid/kivy-users/0c9550e7-f9df-4c1f-8de8-67385e03d0can%40googlegroups.com.
To view this discussion visit https://groups.google.com/d/msgid/kivy-users/92171c9c-b6b3-48b8-8b33-509bd9a3cb7cn%40googlegroups.com.
Hi Lan,
thank you very much for your feedback!
The modules for Speech‑to‑Text, Text‑to‑Speech, and camera text recognition are already fully finished. I’m currently working on the documentation so you can rebuild everything step by step. Over the next few days, the general documentation will be available in APK Builder Studio, so you can already test and integrate the basic features.
With these modules you will be able to:
point the camera at any text → Text Recognition detects it → Text‑to‑Speech reads it aloud
speak into the microphone → Speech‑to‑Text generates the text → you can save or process it further
Once the documentation is online, you can rebuild everything easily.
After that, I will prepare the documentation for my larger project, the T.A.U. app. The app itself is already finished, but it is more complex. T.A.U. is a complete voice assistant: Speech‑to‑Text → Llama or Flash → Text‑to‑Speech. You can talk to the app naturally, ask questions, solve calculations, or request information. The responses are extremely fast — usually within about one second — which makes the interaction feel very natural.
Later on, I plan to integrate weather features as well: Either by sending the weather data directly to Llama/Flash, or by extracting the text inside the app and letting TTS read it aloud. I also want to add a dedicated weather screen with icons for temperature, wind, and other data.
If you feel like joining the project, you’re very welcome — for example by helping with the weather screen, the icons, or other modules. You already understand the structure well, and I would be happy to collaborate with you.
If you don’t have time to join, I will still upload T.A.U. to GitHub in the next few days — without documentation and without the weather integration for now. You can already look at the project structure and see how the app is built.
Best regards, Pedro