For the Android devs - Some new Android PlayStore requirements are here

I’m simply sharing this as it may impact some of you.

TLDR:

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.

Details:

2 Likes

Does Juce still actively support Android?

Yes, I’ve spent the better part of the last two weeks updating support for insets/cutouts and split-screen. It’s slow going, but hopefully we’ll have something ready to publish before long.

2 Likes

What is the recommended way to comply with supporting page sizes of 16KB in a juce Android app? It does not appear to happen automatically with a recent juce v8 build from the master branch.

The short of it:

  1. If you have libraries, you need to upgrade to Android Gradle Plugin (AGP) version 8.5.1 or higher. The Projucer targets fairly modern plugins so you shouldn’t have to do anything. If you’ve overridden these, you should try to update if at all possible (or just remove what you specified to use JUCE’s defaults).
  2. If you target NDK version r28 and higher, it’ll compile with 16 KB-aligned by default. Otherwise see this for details: https://developer.android.com/guide/practices/page-sizes#compile-r27 . (If you need to specify the NDK via the Projucer: Setting the NDK Path - #4 by ed95 )

I can’t speak to what you’re checking out on the master branch: the latest few releases should have these defaults already.

2 Likes

These libraries do not support 16 KB.
base/lib/arm64-v8a/libjuce_jni.so
base/lib/x86_64/libjuce_jni.so
Someone knows how I should do it.

Please provide context:

  1. What’s your build system/environment?
  2. Where did you get those libraries?
    1. I’ve seen them before as generated, intermediate libs. You shouldn’t have to do anything special with them… that I know of.
  3. What is preventing you from using the Projucer to build with JUCE?
    1. If you are using the Projucer, then my above comment helps make a very easy transition - just upgrade your AGP and rebuild.

Ah, I’ve updated the NDK version and it’s working now. I always thought I was using version 28.
Thank you!

1 Like