我使用新的Android App Bundle格式构建我的项目。通过APK文件,我可以将APK下载到我的设备上,打开它,并立即安装应用程序。aab格式),我的Nexus 5X运行Android 8.1无法打开该文件。有没有什么方法可以像apk一样方便地在设备上安装aab ?


当前回答

使用(在Linux上): cd安卓 。/ gradlew assemblyRelease | assemblyDebug

为每个用例生成一个无符号APK(用于调试或测试)

注意:在Windows上,将gradle可执行文件替换为gradlew.bat

其他回答

如果你现在使用的是Maui, Visual Studio 2022只创建AAB文件;但是,您可以从命令行创建APK。

更改目录到你的项目所在的位置并运行这个:

dotnet publish -f:net6.0-android -c:Release /p:AndroidSigningKeyPass=blah

简短的回答:

不直接。

再答:

Android应用程序捆绑是谷歌Play Store上应用程序的默认发布格式。但Android设备需要.apk文件来安装应用程序。

Play Store或你正在安装的任何其他源将从包中提取apks,签名每个apks,然后将它们安装到特定的目标设备。

从。aab到。apk的转换是通过bundletool完成的。

你可以使用内部应用程序共享将应用程序的可调试构建上传到Play Store,并与测试人员共享。

如果您想从您的aab安装apk到您的设备进行测试,那么您需要在连接的设备上运行它之前编辑配置。

进入编辑配置 选择Deploy下拉菜单,将“Default apk”改为“apk from app bundle”。 应用更改,然后在连接的设备上运行它。进行此更改后,构建时间将增加。

这将直接在从aab连接的设备上安装apk。

无法安装应用程序包[NAME]。Aab直接到android设备,因为它是发布格式,但有办法从bundle中提取所需的apk并将其安装到您的设备,过程如下

从这里下载bundletool 在你的终端上运行这个,

java -jar bundletool.jar build-apks --bundle=bundleapp.aab --output=out_bundle_archive_set.apks

最后一步将生成一个名为out_bundle_archive_set的文件。Apks,只需将其重命名为out_bundle_archive_set.zip并提取zip文件,跳转到文件夹out_bundle_archive_set > standalones,在那里您将看到所有Apks的列表

这里有来自android开发者的捆绑工具链接的参考

Windows 11:

C:\dev\bundletool-all-1.9.1\bundletool.jar build-apks——bundle=app-release。= app-release.aab艺术展——输出。apk——模式=普遍

PS C:/folder-with-aab-file> ren app-release.aabapk app-release.aab.apks.zip

解压zip文件后,apk文件的名称为:universal.apk