我正在使用Android Studio 3更新Android应用。以前的版本是使用Android Studio 2创建的。
当我使用Android Studio 2构建最后一个版本时,已经创建了两个单独的APK,一个用于我配置的每个产品风格。现在在Android Studio 3中,“Generate Signed APK”对话框仅提供“组合”风格,可创建包含两种风格的单个APK:
App Gradle
apply plugin: 'com.android.application'
android {
compileSdkVersion 26
defaultConfig {
applicationId "com.example.MyApp"
minSdkVersion 14
targetSdkVersion 26
versionCode 42
versionName "2.0.1"
}
buildTypes {
release {
minifyEnabled true
proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro'
}
}
flavorDimensions "freemium", "free"
productFlavors {
MyApp {
dimension "freemium"
}
MyAppFree {
dimension "free"
applicationId 'com.example.MyApp.Free'
}
}
}
app-MyApp-MyAppFree-release.apk
已创建,而非app-MyApp-release.apk
和app-MyAppFree-release.apk
如何解决这个问题?
答案 0 :(得分:2)
好的,问题是由两种口味使用不同的风味维度引起的。 Gradle为每个维度组合创建一个汇编任务:在我的情况下为MyAppMyAppFree
我添加维度只是为了使警告静音"当从Android Studio 2更新为3时,所有口味现在必须属于命名风味维度" 。因为我没有实际上,使用解决方案的维度只是为两种风格使用一个维度:
flavorDimensions "default"
productFlavors {
MyApp {
dimension "default"
}
MyAppFree {
dimension "default"
applicationId 'com.example.MyApp.Free'
}
}