From 5fe4cdf7f81dd172a3bd26bff19cc7ed58dd6cad Mon Sep 17 00:00:00 2001 From: ml Date: Sat, 5 Sep 2026 16:18:29 +0200 Subject: [PATCH] Bump AGP to 8.5.2 and Gradle to 8.7 for 16 KB page-size support Every .so this project builds was already ELF-segment-aligned for 16 KB pages (build-image/Dockerfile's ANDROID_16KB_LDFLAGS, app/build.gradle's own CMAKE_SHARED_LINKER_FLAGS), but AGP 8.1.1 doesn't align native libraries' zip entries within the APK itself - that only became automatic in AGP 8.5.1, which is what Android Studio's "not compatible with 16 KB devices" warning was actually flagging. No build-image changes needed: Gradle/AGP are resolved over the network at build time, not baked into the image. --- android/build.gradle | 13 ++++++++++++- android/gradle/wrapper/gradle-wrapper.properties | 7 ++++--- 2 files changed, 16 insertions(+), 4 deletions(-) diff --git a/android/build.gradle b/android/build.gradle index c06d6a6..f656e99 100644 --- a/android/build.gradle +++ b/android/build.gradle @@ -9,7 +9,18 @@ buildscript { google() } dependencies { - classpath 'com.android.tools.build:gradle:8.1.1' + // 8.5.1+ needed for AGP to automatically 16 KB-align native + // libraries' zip entries within the APK - the actual .so's are + // already ELF-segment-aligned for this regardless of AGP version + // (see build-image/Dockerfile's ANDROID_16KB_LDFLAGS and + // app/build.gradle's own CMAKE_SHARED_LINKER_FLAGS), but that alone + // doesn't get them 16 KB-aligned *within the APK's zip*, which is + // what Android Studio's "not compatible with 16 KB devices" + // warning is actually about. Needs Gradle 8.7+ (see + // gradle/wrapper/gradle-wrapper.properties) and JDK 17 in whatever + // runs gradlew (already the case - see build-image/Dockerfile's + // openjdk-17-jdk-headless). + classpath 'com.android.tools.build:gradle:8.5.2' } } diff --git a/android/gradle/wrapper/gradle-wrapper.properties b/android/gradle/wrapper/gradle-wrapper.properties index 5b9d759..e92c31d 100644 --- a/android/gradle/wrapper/gradle-wrapper.properties +++ b/android/gradle/wrapper/gradle-wrapper.properties @@ -1,6 +1,7 @@ -#Thu Nov 11 18:20:34 PST 2021 +#Sat Sep 05 16:12:16 CEST 2026 distributionBase=GRADLE_USER_HOME -distributionUrl=https\://services.gradle.org/distributions/gradle-8.1.1-bin.zip distributionPath=wrapper/dists -zipStorePath=wrapper/dists +distributionSha256Sum=544c35d6bd849ae8a5ed0bcea39ba677dc40f49df7d1835561582da2009b961d +distributionUrl=https\://services.gradle.org/distributions/gradle-8.7-bin.zip zipStoreBase=GRADLE_USER_HOME +zipStorePath=wrapper/dists