首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >从命令行使用动态功能模块构建apk,不使用bundletool

从命令行使用动态功能模块构建apk,不使用bundletool
EN

Stack Overflow用户
提问于 2019-06-21 01:18:56
回答 1查看 821关注 0票数 6

我们有几个动态功能模块。我们想要轻松地建立一个调试版本的我们的应用程序与ADB和旁路。当我们使用./gradlew app:assembleDebug时,我们的动态模块不包含在apk中。我知道有一种方法可以通过Android Studio做到这一点:

但是,有没有办法使用ADB来做到这一点呢?基本上只需说“包含所有动态功能模块,就像它们是基本模块的一部分一样”。

我还知道每个开发人员都可以使用bundletool为他们的测试设备组装/构建一个apk。但是这个多步骤的过程减慢了我们这些喜欢CL gradle的人的速度。

EN

回答 1

Stack Overflow用户

发布于 2019-06-26 01:37:59

要么是我使用的是旧版本的Android Gradle插件,要么是我调用的是assemble,而不是install。当使用AGP 3.5.0-beta04调用./gradlew app:installDebug时,将运行bundletool并自动上载必需的拆分are:

代码语言:javascript
复制
...
The APKs have been extracted in the directory: /var/folders/1g/mz8f0hgd0dg8ghy3pd_0llxm0000gn/T/apkSelect457573925930020942
Installing APKs 'base-xxhdpi.apk, base-master_2.apk, base-en.apk, base-x86_2.apk, my-dynamic-feature-xxhdpi.apk, my-dynamic-feature-master.apk' on 'Nexus_5X_API_25(AVD) - 7.1.1' for app:debug
01:30:05 I/SplitApkInstallerBase: Created install session 1503835220 with options -r -t -S 5653406
01:30:05 I/SplitApkInstaller: Uploading APK /var/folders/1g/mz8f0hgd0dg8ghy3pd_0llxm0000gn/T/apkSelect457573925930020942/base-xxhdpi.apk to session 1503835220
01:30:05 D/SplitApkInstaller: Executing : cmd package install-write -S 285980 1503835220 0_base-xxhdpi -
01:30:05 V/ddms: execute: running cmd package install-write -S 285980 1503835220 0_base-xxhdpi -
01:30:05 V/ddms: execute 'cmd package install-write -S 285980 1503835220 0_base-xxhdpi -' on 'emulator-5554' : EOF hit. Read: -1
01:30:05 V/ddms: execute: returning
01:30:05 D/SplitApkInstaller: Successfully uploaded base-xxhdpi.apk
01:30:05 I/SplitApkInstaller: Uploading APK /var/folders/1g/mz8f0hgd0dg8ghy3pd_0llxm0000gn/T/apkSelect457573925930020942/base-master_2.apk to session 1503835220
01:30:05 D/SplitApkInstaller: Executing : cmd package install-write -S 4887264 1503835220 1_base-master__ -
01:30:05 V/ddms: execute: running cmd package install-write -S 4887264 1503835220 1_base-master__ -
01:30:06 V/ddms: execute 'cmd package install-write -S 4887264 1503835220 1_base-master__ -' on 'emulator-5554' : EOF hit. Read: -1
01:30:06 V/ddms: execute: returning
01:30:06 D/SplitApkInstaller: Successfully uploaded base-master_2.apk
01:30:06 I/SplitApkInstaller: Uploading APK /var/folders/1g/mz8f0hgd0dg8ghy3pd_0llxm0000gn/T/apkSelect457573925930020942/base-en.apk to session 1503835220
01:30:06 D/SplitApkInstaller: Executing : cmd package install-write -S 32342 1503835220 2_base-en -
01:30:06 V/ddms: execute: running cmd package install-write -S 32342 1503835220 2_base-en -
01:30:06 V/ddms: execute 'cmd package install-write -S 32342 1503835220 2_base-en -' on 'emulator-5554' : EOF hit. Read: -1
01:30:06 V/ddms: execute: returning
01:30:06 D/SplitApkInstaller: Successfully uploaded base-en.apk
01:30:06 I/SplitApkInstaller: Uploading APK /var/folders/1g/mz8f0hgd0dg8ghy3pd_0llxm0000gn/T/apkSelect457573925930020942/base-x86_2.apk to session 1503835220
01:30:06 D/SplitApkInstaller: Executing : cmd package install-write -S 401632 1503835220 3_base-x____ -
01:30:06 V/ddms: execute: running cmd package install-write -S 401632 1503835220 3_base-x____ -
01:30:06 V/ddms: execute 'cmd package install-write -S 401632 1503835220 3_base-x____ -' on 'emulator-5554' : EOF hit. Read: -1
01:30:06 V/ddms: execute: returning
01:30:06 D/SplitApkInstaller: Successfully uploaded base-x86_2.apk
01:30:06 I/SplitApkInstaller: Uploading APK /var/folders/1g/mz8f0hgd0dg8ghy3pd_0llxm0000gn/T/apkSelect457573925930020942/my-dynamic-feature-xxhdpi.apk to session 1503835220
01:30:06 D/SplitApkInstaller: Executing : cmd package install-write -S 15362 1503835220 4_my-dynamic-feature-xxhdpi -
01:30:06 V/ddms: execute: running cmd package install-write -S 15362 1503835220 4_my-dynamic-feature-xxhdpi -
01:30:06 V/ddms: execute 'cmd package install-write -S 15362 1503835220 4_my-dynamic-feature-xxhdpi -' on 'emulator-5554' : EOF hit. Read: -1
01:30:06 V/ddms: execute: returning
01:30:06 D/SplitApkInstaller: Successfully uploaded my-dynamic-feature-xxhdpi.apk
01:30:06 I/SplitApkInstaller: Uploading APK /var/folders/1g/mz8f0hgd0dg8ghy3pd_0llxm0000gn/T/apkSelect457573925930020942/my-dynamic-feature-master.apk to session 1503835220
01:30:06 D/SplitApkInstaller: Executing : cmd package install-write -S 30826 1503835220 5_my-dynamic-feature-master -
01:30:06 V/ddms: execute: running cmd package install-write -S 30826 1503835220 5_my-dynamic-feature-master -
01:30:06 V/ddms: execute 'cmd package install-write -S 30826 1503835220 5_my-dynamic-feature-master -' on 'emulator-5554' : EOF hit. Read: -1
01:30:06 V/ddms: execute: returning
01:30:06 D/SplitApkInstaller: Successfully uploaded my-dynamic-feature-master.apk
01:30:06 V/ddms: execute: running cmd package install-commit 1503835220
01:30:14 V/ddms: execute 'cmd package install-commit 1503835220' on 'emulator-5554' : EOF hit. Read: -1
01:30:14 V/ddms: execute: returning
01:30:14 D/SplitApkInstaller: Successfully install apks: [/var/folders/1g/mz8f0hgd0dg8ghy3pd_0llxm0000gn/T/apkSelect457573925930020942/base-xxhdpi.apk, /var/folders/1g/mz8f0hgd0dg8ghy3pd_0llxm0000gn/T/apkSelect457573925930020942/base-master_2.apk, /var/folders/1g/mz8f0hgd0dg8ghy3pd_0llxm0000gn/T/apkSelect457573925930020942/base-en.apk, /var/folders/1g/mz8f0hgd0dg8ghy3pd_0llxm0000gn/T/apkSelect457573925930020942/base-x86_2.apk, /var/folders/1g/mz8f0hgd0dg8ghy3pd_0llxm0000gn/T/apkSelect457573925930020942/my-dynamic-feature-xxhdpi.apk, /var/folders/1g/mz8f0hgd0dg8ghy3pd_0llxm0000gn/T/apkSelect457573925930020942/my-dynamic-feature-master.apk]
Installed on 1 device.
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/56690993

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档