Important Android 15 Breaking Change SQLite plugin

Hello

There is a breaking change for Android 15, any plugin (all SQLite, google maps…) who have compiled .so library dont works anymore on Android 15 with devices with Page Size 16Kb. Testsable with emulator or Pixel8 and beta.

Ex:

Tested:

  1. Execution on Normal device: OK
  2. Execution on Android 15 Beta QR1 + Normal mode (Emulator + Pixel 8): OK
  3. Execution on Android 15 Beta QR1 + Page size 16Kb mode (Emulator + Pixel 8): Crash

I tested to recompile the libs with the following commands, then app works only when debugging with Android Studio, but crash when send to Google Play store (error during download, .so lib not aligned).

Docs:

We’ve been keeping an eye on this one - we expect a number of plugins will need to be forked or updated. Can you provide more details on what commands you’re using and the crash your experiencing?

Hello

Thanks for your message.

image.png

https://play.google.com/apps/internaltest/4700127481357283053

Extract from log after Download beta app with Pixel 8 Google Play with Beta Android 15 QR1 and Pagesize 16Kb mode.

08-29 21:55:04.911 1335 1732 E NativeLibraryHelper: Library ‘libsqlc-native-driver.so’ is not PAGE(16384)-aligned - will not be able to open it directly from apk.
08-29 21:55:04.911 1335 1732 W NativeHelper: Failure copying native libraries [errorCode=-2]
08-29 21:55:04.911 1335 1732 D PackageInstallerSession: Marking session 1330816594 as failed: INSTALL_FAILED_INVALID_APK: Failed to extract native libraries, res=-2

  • Check alignment, .so seems ok but i have error on others files with build tools 34.

C:\Users\alex\Documents\GitHub\hooliapps\src\planningify\google\release\platforms\android\app\release>C:\Users\alex\AppData\Local\Android\Sdk\build-tools\34.0.0\zipalign -c -v 16384 app-release.apk
Verifying alignment of app-release.apk (16384)…
87 META-INF/com/android/build/gradle/app-metadata.properties (OK - compressed)
208 META-INF/version-control-info.textproto (OK - compressed)
316 assets/dexopt/baseline.prof (BAD - 316)
2044 assets/dexopt/baseline.profm (BAD - 2044)
2269 classes.dex (OK - compressed)
2246086 classes2.dex (OK - compressed)
5521408 lib/arm64-v8a/libsqlc-native-driver.so (OK)
6553600 lib/armeabi-v7a/libsqlc-native-driver.so (OK)
7045120 lib/x86/libsqlc-native-driver.so (OK)
8110080 lib/x86_64/libsqlc-native-driver.so (OK)

I forked the plugin:

And GitHub - hooliapps/Android-sqlite-native-driver: Provides a native build of sqlite with a low-level interface for Android libraries. Unlicense (public domain). to compile the libs.