我有一个包含穿戴应用程序的应用程序。在使用真实设备进行调试测试时一切正常。我还可以创建将磨损 apk 打包在其中的发布 apk。但前提是我的应用程序只有一种风格。
我想维护具有不同 applicationId 的应用程序的两个版本,但是尽管编译没有错误,但在这种情况下,两个发布 apk(每种风格一个)不包含相应的磨损 apk。
这是移动应用 build.gradle 的相关部分:
productFlavors {
Trial {
applicationId "com.example.myapp.trial"
versionName "3.0.1"
versionCode 301
}
Full {
applicationId "com.example.myapp"
versionName "3.0.1"
versionCode 301
}
}
}
dependencies {
compile 'com.google.android.gms:play-services:6.1.+@aar'
wearApp project(':myWearApp')
}
这是对应的wear app build.gradle:
productFlavors {
Trial {
applicationId "com.example.myapp.trial"
versionName "3.0.1"
versionCode 301
}
Full {
applicationId "com.example.myapp"
versionName "3.0.1"
versionCode 301
}
}
}
dependencies {
compile 'com.google.android.support:wearable:1.0.0'
compile 'com.google.android.gms:play-services-wearable:6.1.71'
}
欢迎任何帮助。谢谢。
最佳答案
感谢 Scott 给我的线索,这是完整的解决方案:
1.) 味道必须小写
2.) 依赖配置必须包含flavorRelease
3.) 在 Wear app build gradle 中,在 android{} 下,我们必须包含 publishNonDefault true
所以对于移动应用 build.gradle:
android {
......
productFlavors {
trial {
applicationId "com.sample.myapp.trial"
versionName "3.0.1"
versionCode 301
}
full {
applicationId "com.sample.myapp"
versionName "3.0.1"
versionCode 301
}
}
}
dependencies {
trialWearApp project(path: ':myWearApp', configuration: 'trialRelease')
fullWearApp project(path: ':myWearApp', configuration: 'fullRelease')
}
对于穿戴应用程序 build.gradle:
android {
publishNonDefault true
......
productFlavors {
trial {
applicationId "com.sample.myapp.trial"
versionName "3.0.1"
versionCode 301
}
full {
applicationId "com.sample.myapp"
versionName "3.0.1"
versionCode 301
}
}
}
关于Android Wear 应用程序打包失败,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27387429/