为什么用AAB代替APK?
Google Play 使用 app bundle 来创建和分发针对每个设备配置进行了优化的 APK 文件,因此只下载特定设备所需的代码和资源来运行应用程序。.您不再需要创建、签署和管理多个 APK 文件来优化对不同设备的支持,并且用户可以获得更小、更优化的下载。
几乎任何应用程序项目都不需要花费太多精力来创建支持优化 APK 文件交付的应用程序包。例如,如果您已根据既定约定组织应用程序的代码和资源,只需使用 Android Studio 或使用命令行创建一个已签名的 Android App Bundle,然后将它们上传到 Google Play。优化后的 APK 交付将成为一种自我永存的好处。
当您使用 app bundle 格式发布您的应用时,您还可以选择利用 Play Feature Delivery,它允许您将功能模块添加到您的应用项目中。这些模块包含的功能和资源仅包含在您的应用程序中,基于您指定的条件,或者在运行后可使用 Play 核心库下载。
通过 app bundle 发布应用的游戏开发者可以使用 Play Asset Delivery:Google Play 的解决方案来分发大量游戏内容,为开发者提供不同的分发方法。灵活性和高性能。
观看以下视频,大致了解为何应使用 Android App Bundle 发布应用。
压缩下载大小限制
使用 Android App Bundle 发布可帮助用户以尽可能小的下载大小安装应用,并将压缩下载大小限制增加到 150MB。
即用户下载应用时,安装应用所需的压缩APK文件总大小(如基础APK+配置APK)不能大于150MB。任何后续下载,例如按需下载功能模块(及其配置 APK),也必须满足此压缩下载大小限制。内容包不会影响此容量限制,但它们确实有其他大小限制。
当您上传 apk 时,如果 Play 管理中心发现任何可能下载的应用或其所需功能大于 150MB,您将收到错误消息。
请注意,Android App Bundle 不支持 APK 扩展文件 (*.obb)。因此,如果您在发布 APK 时遇到此错误,请使用以下资源之一来减少压缩的 APK 下载大小:
- 通过为每个配置 APK 类型设置 enableSplit=true,确保启用所有配置 APK。这可确保用户仅下载在其设备上运行应用所需的代码和资源。
- 确保通过删除未使用的代码和资源来缩小您的应用。
- 遵循最佳做法以进一步减少应用存储空间。
- 考虑将仅由某些用户使用的功能转换为您的应用稍后可以按需下载的功能模块。请注意,这可能需要对应用程序进行一些重构,因此请务必先尝试上述其他建议。
Android App Bundle 的一些问题
以下是使用 Android App Bundle 构建或分发应用时的当前已知问题。
仅部分安装的旁加载应用-即未使用 Google Play 商店加载且缺少一个或多个所需拆分 APK 的应用-未能在所有 Google 认证设备和运行 Android 10 (API) 的设备上成功安装等级 29) 或更高。通过 Google Play 商店下载应用时,Google 会确保安装了应用所需的所有组件。
如果您使用动态资源表修饰符,从 apk 生成的 APK 可能会出现意外行为。因此,在构建 apk 时,您应该禁用这些工具。
现在可以在功能模块的构建配置中配置与基础模块(或其他模块)中的属性冲突的属性。例如,您可以在基本模块中设置 buildTypes.release.debuggable=true 并在功能模块中将其设置为 false。请记住,默认情况下,功能模块会从基本模块继承一些构建配置。因此,请确保您了解在您的功能模块构建配置中应该保留哪些配置以及应该忽略哪些配置。
评论