¿Cómo puedo crear bibliotecas compartidas extraídas por Android para AAB?

Nov 25 2020

Configuré android:extractNativeLibs="true"y apunto a Android 29 para que /data/app/%package%/...Android extraiga mis bibliotecas compartidas . Si funciona bien con APK para solucionar el problema de permisos de Android 10 .

Recientemente tuve que cambiar a AAB debido al aumento de tamaño de descarga de 150 Mb ya que el tamaño de mi APK excede el límite de Google Play de 100 Mb. Al probar la instalación de APK desde AAB [opción de implementación "APK de paquete de aplicaciones" en Android Studio], noté que /data/app/%package%/.. está vacío (en contraste con la instalación de APK simple), lo cual es un problema ya que necesito que se puedan ejecutar como ejecutables los detalles en la solución alternativa). Revisé los apks divididos en el directorio de compilación y contienen el conjunto correcto para mi dispositivo de prueba:

/out/base-arm64_v8a_2.apk
/out/base-ru.apk
/out/base-master_2.apk
/out/base-xxhdpi.apk

y puedo ver las bibliotecas compartidas en apk.

Sin embargo, android:extractNativeLibs="true"se ignora para AAB.

¿Es un error o una característica? ¿Cómo puedo forzar la extracción de las bibliotecas incluso para AAB?

PD. Usando el complemento de Gradle 5.6 y android.enableAapt2=trueen gradle.properties. Probé las variantes Release y Debug.

Respuestas

4ntoine Nov 25 2020 at 20:52

Perdón por el duplicado .

En resumen: solo utilícelo android.bundle.enableUncompressedNativeLibs=falseen sus "gradle.properties".