Après AGP4.2, la compression des fichiers So est désactivée par défaut.
Après AGP7.1 et minSdkVersion>=28, la compression des fichiers dex est désactivée par défaut et le packaging des app bundles ne sera pas affecté.
Phénomène
Après la mise à niveau vers AGP7, j'ai constaté que l'apk emballé était devenu beaucoup plus volumineux. Faites glisser l'apk dans le studio Android pour analyse.
Par rapport à l'apk précédent, j'ai constaté que le fichier so principal a augmenté et que le fichier dex n'a pas été compressé.
donc compression de fichiers
Après AGP3.6, la compression est donc désactivée par défaut, il suffit de la déclarer comme vraie
minSdkVersion < 23 或 Android Gradle plugin < 3.6.0情况下,打包时 android:extractNativeLibs=true;
minSdkVersion >= 23 并且 Android Gradle plugin >= 3.6.0情况下,打包时android:extractNativeLibs=false;
AndroidManifest.xml
<application
android:extractNativeLibs="true"
...>
ou
android {
packagingOptions {
jniLibs {
useLegacyPackaging true
}
}
}
compression de fichier dex
android {
packagingOptions {
dex {
useLegacyPackaging true
}
}
}
référence
https://stackoverflow.com/questions/75089735/why-does-minsdkversion-27-28-double-apk-size
https://developer.android.com/reference/tools/gradle-api/7.1/com/android /build/api/dsl/DexPackagingOptions#useLegacyPackaging:kotlin.Boolean
https://blog.csdn.net/zl_china/article/details/125212864
https://www.cnblogs.com/xiaxveliang/p/14583802.html