Jay*_*nth 28 android apk android-studio android-app-bundle
有没有办法从Android应用程序Bundle通过终端或使用Android工作室生成一个apk文件?
Man*_*ddy 25
好的,这是我必须做的完整方法
1.从此链接下载bundletool-all-0.10.3.jar ,下载最新版本
2.使用android studio创建一个应用程序包并找到其路径
就我而言 E:\Projects\Android\Temp\app\build\outputs\bundle\debug\app.aab
3.将bundletools jar复制到某个位置并获取其路径
就我而言 E:\Temp\bundletool-all-0.6.0.jar
使用此命令
java -jar "BUNDLE_TOOL_JAR_PATH" build-apks --bundle="BUNDLE_PATH" --output=YOUR_OUTPUT_NAME.apks
就我而言
java -jar "E:\Temp\bundletool-all-0.6.0.jar" build-apks --bundle="E:\Projects\Android\Temp\app\build\outputs\bundle\debug\app.aab" --output=out_bundle_archive_set.apks
Run Code Online (Sandbox Code Playgroud)
4.这将创建一个文件out_bundle_archive_set.apks,将其重命名为.zip out_bundle_archive_set.zip,解压缩此文件并完成您将有多个apk
Fir*_*mon 21
默认情况下,IDE不使用应用程序包将您的应用程序部署到本地设备进行测试
请参阅bundletool命令
对于Debug apk命令,
bundletool build-apks --bundle=/MyApp/my_app.aab --output=/MyApp/my_app.apks
Run Code Online (Sandbox Code Playgroud)
对于Release apk命令,
bundletool build-apks --bundle=/MyApp/my_app.aab --output=/MyApp/my_app.apks
--ks=/MyApp/keystore.jks
--ks-pass=file:/MyApp/keystore.pwd
--ks-key-alias=MyKeyAlias
--key-pass=file:/MyApp/key.pwd
Run Code Online (Sandbox Code Playgroud)
Pie*_*rre 14
人们已经解释了如何使用命令行执行此操作。作为完成,我想我还将展示通过Android Studio中的UI进行操作的方法。
当您打开“运行/调试配置”时,可以选择“来自应用程序捆绑包的APK”(而不是“默认APK”)。
看截图:
Aar*_*all 14
到目前为止,还没有人提供从AAB获取APK的解决方案。
该解决方案将生成通用二进制文件作为apk。
将--mode = universal添加到bundletool命令中(如果需要签名的应用程序,请根据需要使用--ks参数)。
bundletool build-apks --bundle=/MyApp/my_app.aab --output=/MyApp/my_app.apks
--mode=universal
Run Code Online (Sandbox Code Playgroud)
将输出文件名从.apks更改为.zip
解压缩并探索
文件Universal.apk是您的应用程序
这个通用二进制文件可能很大,但是对于将其发送到质量检查部门或将应用分发到Google Play商店以外的任何地方,这都是一个很好的解决方案。
在 Mac 上,它可以使用自制软件轻松完成
brew install bundletool
Run Code Online (Sandbox Code Playgroud)
你可以使用下面的命令来生成apks
bundletool build-apks --bundle=aab_path.aab --output=release.apks
Run Code Online (Sandbox Code Playgroud)
上面的命令会生成 apk 文件,稍后可以提取该文件以提供各种 apk 文件。要查看所有生成的文件,请将扩展名从 .apks 更改为 .zip 并提取文件。
然后您可以在连接的设备上使用此命令安装 apk
bundletool install-apks --apks=release.apks
Run Code Online (Sandbox Code Playgroud)
我开发了一个 Windows 工具,用于在 Python 中将 .aab 文件转换为 .apk。
\n它支持创建调试和签名的 apk,可以直接安装到通过 USB 连接的默认 Android 设备。
\n它在后端使用 google\xe2\x80\x99s 捆绑工具。
\nhttps://aabtoapkconverter.com/
\n编辑:\n源代码现已在github上提供。
\n这是我开发并与世界分享的第一个工具。希望它有用。我愿意接受建议和错误报告。
\n\n有一个名为的工具bundletool,可以从您的AAB文件中创建APK:
在此处找到有关此工具的详细信息:https : //developer.android.com/studio/command-line/bundletool
但是这里有一些来自该站点的亮点:
建筑APK
当bundletool从您的应用捆绑包生成APK时,它将APK包含在称为APK集档案的容器中,该容器使用.apks文件扩展名。要为您的应用程序捆绑包中的应用程序支持的所有设备配置生成APK集,请使用bundletool build-apks命令,如下所示:
bundletool build-apks --bundle=/MyApp/my_app.aab --output=/MyApp/my_app.apks
Run Code Online (Sandbox Code Playgroud)
请注意,上面的命令会创建一个未签名APK的APK集。如果要将APK部署到设备,则还需要包括应用程序的签名信息,如下面的命令所示。
bundletool build-apks --bundle=/MyApp/my_app.aab --output=/MyApp/my_app.apks
--ks=/MyApp/keystore.jks
--ks-pass=file:/MyApp/keystore.pwd
--ks-key-alias=MyKeyAlias
--key-pass=file:/MyApp/key.pwd
Run Code Online (Sandbox Code Playgroud)
安装APK
bundletool install-apks --apks=/MyApp/my_app.apks
Run Code Online (Sandbox Code Playgroud)
生成一组设备专用的APK
bundletool build-apks --connected-device --bundle=/MyApp/my_app.aab --output=/MyApp/my_app.apks
Run Code Online (Sandbox Code Playgroud)
对于那些希望从Android App Bundle生成单个通用APK文件的用户,--universal在运行build-apks命令时必须使用flag 。
java -jar bundletool.jar build-apks --bundle=your_app.aab --output=your_app.apks --mode=universal
Run Code Online (Sandbox Code Playgroud)
其中 bundletool.jar是您在此处下载的bundletool jar文件
your_app.aab是您的应用程序的Android应用程序捆绑包
your_app.apks是输出的APKs存档文件,将在您运行命令后生成。
运行上述命令时,请确保将bundletool.jar和AAB文件放在同一文件夹中。
现在,您需要更改your_app。apks文件格式为your_app。zip并将其解压缩以找到Universal.apk文件
注意:–overwrite如果已有同名APK,请使用标志覆盖APK文件。否则,bundletool命令将引发致命错误。
| 归档时间: |
|
| 查看次数: |
25795 次 |
| 最近记录: |