一、概述
从今年8月起,「Android应用安装包的标准发布格式将发生全新变化:APK格式 -> AAB格式」, AAB格式也将成为在Google Play Store 上架的默认应用格式
二、简介
即 Android App Bundle,可以理解为是一种跟APK类似的Android应用发布格式。
三、优势
- 1.占存更少
Google Play 使用 App Bundle 来生成和优化 APK,以便针对不同的设备配置和语言进行分发。会使得应用程序占存更少(平均比 APK 少 15%)、下载速度更快;
- 2.提高安全性
App Bundle使用了Play App Signing应用签名,它通过使用 Google 的安全基础设施来避免应用签名密钥不会丢失 & 可以升级到加密性更强的新应用签名秘钥。在不久的将来,Play App Signing 将开始向选定的应用程序推出 APK Signature Scheme v4,使其有可能在较新的设备选择性地访问即将提供的 Android 性能功能;
- 3.应用特性按需交付
可根据交付功能、交付设备及交付时间实现应用功能特性的自定义交付,即将哪些功能模块 交付给哪个设备 & 何时交付,支持安装时交付、按条件交付和按需交付等三种模式。
- 4.应用资源按需交付
根据需求可动态交付大型资源,能大大减少用户的等待时间,同时降低交付应用大型资源的成本。
四、常见 Q&A
- 1.对于旧的使用APK的Android应用该如何兼容?
答:AAB格式的要求仅适用于新应用,现有应用目前无需遵从此要求。
- 2.相比于APK,使用AAB格式需要增加多少工作量?
答:使用AAB格式来替代 APK 格式仅需要少量工作:在构建时选择对应AAB格式构建选项即可。App Bundle 是一种受主流构建工具支持的开源格式,包括 Android Studio、Gradle等,可以在支持的IDE中使用可选的高级 App Bundle 功能进行应用安装包的构建。
- 3.若使用AAB格式,是否可以继续通过多分发渠道/应用商店发布应用?
答:可以的,具体是:
使用通用的应用签名密钥或使用针对不同渠道的唯一应用签名密钥,包括面向 Google Play 的唯一应用签名密钥;
可以在本地面向所有分发渠道构建并签名工件,或者从 Google Play 中下载可分发的 APK,并发布于其他渠道;
需要特别注意的是:从 Google Play 下载的 APK,均由 Play 应用签名管理的同个密钥进行签名。 - 4.对于应用的签名秘钥内容,可以由开发者自身确定 / 更改吗?
答:可以的,具体是:
对于决定应用签名秘钥:创建新应用时,可以向 Google 提供应用签名密钥,并在 Play 管理中心中选择对应选项进行设置,只要在第一次发布到开放渠道之前,都可以更改应用签名密钥。
对于修改应用签名秘钥:应用可以请求在 Play 管理中心中针对新安装应用进行应用签名密钥升级。此后,Google Play 将使用新密钥对新安装的应用/更新进行签名,同时,使用旧应用签名密钥对密钥升级前已安装应用的用户进行的更新进行签名。
五、目前进展
根据 Google 官方统计,目前已超过「100万个应用程序正在使用 AAB 格式」,其中包括 Twitter、Netflix等。