App Bundle
亚马逊应用商店支持提交Android App Bundle (AAB) 格式的应用文件。亚马逊应用商店将接收您的App Bundle并生成APK。亚马逊应用商店使用bundletool
(版本1.11)将App Bundle文件转换为经过优化的APK,此类APK的下载和安装可以跨客户端设备进行。针对客户设备配置优化了其安装的APK文件的大小。
可以向亚马逊应用商店提交Android App Bundle文件,无需创建单独的APK。但是,App Bundle文件必须符合亚马逊应用商店的提交要求。有关应用要求的详细说明,请参阅了解亚马逊应用商店提交和亚马逊应用商店提交前核对清单。
创建App Bundle
必须先创建Android App Bundle文件,然后才能在亚马逊应用商店提交App Bundle。有关如何配置App Bundle文件的信息,请参阅Android开发者文档中的关于Android App Bundle (AAB)。
测试App Bundle
提交应用之前,亚马逊应用商店建议使用bundletool
在本地对Bundle进行测试。在您提交App Bundle后,亚马逊会使用自定义bundletool
从该Bundle生成经过优化的APK。所生成APK的大小会针对每个用户的特定设备而优化。要测试亚马逊的自定义bundletool
生成的APK,可以下载并使用此bundletool
JAR:
可以使用此JAR在本地系统上测试生成的APK。要生成经过优化的APK,请使用build-apks
命令并将mode(模式)设置为persistent(持久),如以下示例所示。
java -jar bundletool.jar build-apks --bundle=path-to-your-app-bundle.aab --output=generated-apks.apks --mode=persistent
在首选shell中,可以选择将java -jar bundletool.jar
设置为具有命令行别名bundletool
。使用特定于首选shell的指令来设置别名。设置别名后,命令将如下所示。
bundletool build-apks --bundle=path-to-your-app-bundle.aab --output=generated-apks.apks --mode=persistent
有关如何使用bundletool
从App Bundle生成APK的更多详细信息,请参阅bundletool文档。在本地对Bundle进行测试后,亚马逊应用商店建议在提交要上线的应用之前,对App Bundle进行动态应用测试 (LAT)。
动态模块会与经过优化的APK合并,在安装时交付。您可以通过LAT来测试应用并了解各个模块如何合并。
提交App Bundle
要在开发者控制台提交App Bundle,请按照以下步骤操作:
- 在开发者控制台主信息页面中,选择“应用程序列表”。
- 选择您的应用并转到上传您的应用文件屏幕。
- 在应用程序文件部分,可以上传App Bundle文件。单击方框或将AAB文件拖动到框中以开始上传。
可以在确定您应用的支持目标屏幕上调整Bundle支持的设备。有关详细信息,请参阅支持的设备。有关应用提交流程的更多信息,请参阅向亚马逊应用商店提交应用。
App Bundle常见问题解答
本节包含与App Bundle相关的常见问题解答 (FAQ)。
应用提交
- 问: 亚马逊应用商店是否强制要求使用Android App Bundle?
- App Bundle为可选项。您可以继续使用现有APK格式来提交应用。
- 问: App Bundle会改变我向亚马逊应用商店提交应用的方式吗?
- 不会。对于任一应用格式(AAB或APK),App Bundle都不会改变应用提交流程。
- 问: 如果我的应用已使用APK进行发布,是否需要重新提交应用?
- 不需要。如果发布的应用此前是以APK格式提交的,则无需重新提交。可以继续使用APK格式发布新应用以及更新现有应用。未来提交应用时,可以选择上传Android App Bundle格式 (.aab) 的文件,从而使用App Bundle。
App Bundle功能
- 问: 我的应用可以享受Android App Bundle提供的所有益处吗?
- 目前,亚马逊应用商店不支持非install-time功能、资产交付或即时应用。
- 问: 如果我的App Bundle包含动态交付模块,会发生什么情况?
- 无论清单中是否使用“fusing”属性,动态交付模块都会合并到经过优化的APK中。
- 问: 如果我的App Bundle包含资产包,会发生什么情况?
- 亚马逊应用商店当前仅支持install-time资产交付。以前,亚马逊应用商店允许将App Bundle文件上传至开发者控制台,对交付类型没有限制。现在,亚马逊应用商店不再接受包含非install-time资产包的App Bundle文件。
如果应用包含非install-time资产包,请其转换为install-time资产包。要将非install-time资产包转换为install-time,请在应用的build.gradle文件中修改资产包的交付类型。要访问这些资产,请更新所有受影响的方法调用。有关详细信息,请参阅Android开发者文档中的Play Asset Delivery。进行这些更新后,测试您的应用,确保所有资产都能正确加载,并且在应用的整个生命周期内均可访问。 - 问: 如果我的App Bundle包含条件功能交付模块,会发生什么情况?
- 无论清单中是否使用“fusing”属性,条件功能交付模块都会合并到经过优化的APK中。
亚马逊服务
- 问: 应用提交API可以用于App Bundle吗?
- 不可以,应用提交API目前不支持App Bundle。
- 问: 动态应用测试 (LAT) 可以用于App Bundle吗?
- 可以,LAT支持App Bundle。亚马逊应用商店建议在提交要上线的应用之前,使用LAT对App Bundle进行测试。
Last updated: 2024年3月28日