Android Studio:如何为选定的 buildType 一次为所有 productFlavors 生成多个 APK 或签名 APK?
Android Studio: How to generate multiple APKs or signed APKs for all productFlavors at once for a selected buildType?
我想制作所有 apk 文件以发布到所有商店,所以我必须为每个 apk 使用 productFlavor
:
build.gradle
buildTypes {
release {
...
}
debug {
...
}
}
productFlavors {
red {
...
}
yellow {
...
}
}
输出
appname_red_debug.apk
appname_red_release.apk
appname_yellow_debug.apk
appname_yellow_release.apk
我知道上面的代码可以改变apk的文件名。但是当我生成签名的apk时,我只能选择一个productFlavor
。这样,结果仅特定于 productFlavor
。
:已更新
如何使用 assembleRelease 在命令行上一次制作所有 apk 文件?有谁知道这件事吗?
在 selecting 构建类型后生成签名的 apk 时,您总是可以从列表中 select 多种风格。它将为给定构建类型的所有 selected 风格生成 apk。我已经做过好几次了。
怎么样,你问? Select 一种口味然后按 Ctrl + A 到 select 所有口味或 按 Ctrl 和 select 多种口味。
这是我现在做的截图(屏蔽了口味名称):
更新: 我进一步探索并注意到将鼠标拖动到select多个项目在这里不起作用 与其他工具一样。这就是所有混淆的原因,我认为 Google 应该启用 selection,否则许多用户可能仍未使用该功能。
如果您想使用命令行,您可以使用以下命令之一:
All buildVariants
- ./gradlew assemble
All flavors for a buildType
- ./gradlew assembleDebug
- ./gradlew assembleRelase
All buildTypes for a flavor
- ./gradlew assembleRed
- ./gradlew assembleYellow
Only a buildVariant
- ./gradlew assembleRedDebug
- ./gradlew assembleRedRelease
- ./gradlew assembleYellowDebug
- ./gradlew assembleYellowRelease
您也可以使用
更改 apk 名称
project.ext.set("archivesBaseName", "....");
例如
project.ext.set("archivesBaseName", "myApp."+ defaultConfig.versionName);
我想制作所有 apk 文件以发布到所有商店,所以我必须为每个 apk 使用 productFlavor
:
build.gradle
buildTypes {
release {
...
}
debug {
...
}
}
productFlavors {
red {
...
}
yellow {
...
}
}
输出
appname_red_debug.apk
appname_red_release.apk
appname_yellow_debug.apk
appname_yellow_release.apk
我知道上面的代码可以改变apk的文件名。但是当我生成签名的apk时,我只能选择一个productFlavor
。这样,结果仅特定于 productFlavor
。
:已更新
如何使用 assembleRelease 在命令行上一次制作所有 apk 文件?有谁知道这件事吗?
在 selecting 构建类型后生成签名的 apk 时,您总是可以从列表中 select 多种风格。它将为给定构建类型的所有 selected 风格生成 apk。我已经做过好几次了。
怎么样,你问? Select 一种口味然后按 Ctrl + A 到 select 所有口味或 按 Ctrl 和 select 多种口味。
这是我现在做的截图(屏蔽了口味名称):
更新: 我进一步探索并注意到将鼠标拖动到select多个项目在这里不起作用 与其他工具一样。这就是所有混淆的原因,我认为 Google 应该启用 selection,否则许多用户可能仍未使用该功能。
如果您想使用命令行,您可以使用以下命令之一:
All buildVariants
- ./gradlew assemble
All flavors for a buildType
- ./gradlew assembleDebug
- ./gradlew assembleRelase
All buildTypes for a flavor
- ./gradlew assembleRed
- ./gradlew assembleYellow
Only a buildVariant
- ./gradlew assembleRedDebug
- ./gradlew assembleRedRelease
- ./gradlew assembleYellowDebug
- ./gradlew assembleYellowRelease
您也可以使用
更改 apk 名称project.ext.set("archivesBaseName", "....");
例如
project.ext.set("archivesBaseName", "myApp."+ defaultConfig.versionName);