android 包大小比通用 apk 大得多
android bundle size much bigger than in universal apk
当我构建通用 apk 时,它的大小是 170mb。在我实施扩展文件后(由于资产文件夹很大),我必须构建捆绑包。但是捆绑包的大小要大得多——283mb。 Uppon 解压缩 aab 文件我看到,只有 lib 文件夹重量为 150mb。并包括配置中不存在的额外架构(如 mips)
splits {
abi {
enable true
reset()
include 'x86', 'armeabi-v7a', 'arm64-v8a'
universalApk false
}
}
文件夹大小存在差异,其中库主要是 C++ 库。
可以做些什么来减轻这种增长,因为 playmarket 只接受 150mb 及以下的捆绑包(不包括资产交付大小)
代码分析可以帮助找到不必要的代码。分析 -> 检查代码... -> 整个项目。那可以清理一些space。如果你有很大的依赖,你可以用较小的依赖替换它们,但是你需要重写代码。
你可以要求gradle减少依赖的大小:
android {
// Other settings
buildTypes {
release {
minifyEnabled true
shrinkResources true
proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro'
}
}
}
这里是 link 关于减小 apk 大小的:reduce-apk-size
还有一个:shrink code
大部分是用上面的代码添加的
App Bundle 大小并不能直接表示用户的下载量有多大。另外 150MB 的限制是 compressed download size limit.
您应该上传您的 App Bundle 并使用 Play 管理中心的 App Bundle Explorer 仔细检查下载的大小。
Google Play 商店实施了许多优化,以减少从 Android App Bundle 交付应用程序时的下载量。
您可以在文档中找到更多信息:https://d.android.com/appbundle
当我构建通用 apk 时,它的大小是 170mb。在我实施扩展文件后(由于资产文件夹很大),我必须构建捆绑包。但是捆绑包的大小要大得多——283mb。 Uppon 解压缩 aab 文件我看到,只有 lib 文件夹重量为 150mb。并包括配置中不存在的额外架构(如 mips)
splits {
abi {
enable true
reset()
include 'x86', 'armeabi-v7a', 'arm64-v8a'
universalApk false
}
}
文件夹大小存在差异,其中库主要是 C++ 库。
代码分析可以帮助找到不必要的代码。分析 -> 检查代码... -> 整个项目。那可以清理一些space。如果你有很大的依赖,你可以用较小的依赖替换它们,但是你需要重写代码。
你可以要求gradle减少依赖的大小:
android {
// Other settings
buildTypes {
release {
minifyEnabled true
shrinkResources true
proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro'
}
}
}
这里是 link 关于减小 apk 大小的:reduce-apk-size
还有一个:shrink code
大部分是用上面的代码添加的
App Bundle 大小并不能直接表示用户的下载量有多大。另外 150MB 的限制是 compressed download size limit.
您应该上传您的 App Bundle 并使用 Play 管理中心的 App Bundle Explorer 仔细检查下载的大小。
Google Play 商店实施了许多优化,以减少从 Android App Bundle 交付应用程序时的下载量。
您可以在文档中找到更多信息:https://d.android.com/appbundle