这是一个跟进问题。你不需要,但你可以read the first question .
这是我的问题。我从一个来源创建了两个 apk。然后我在 Google Play Store 上发布了两个 APK,每个都是独立的应用程序。假设一个应用名为 Cat,另一个名为 Dog。现在我遇到了一个问题,如果我在我的设备上安装了 Cat,那么我就无法安装 Dog,反之亦然。知道为什么会这样吗?来自 PlayStore 的错误代码是“错误代码:-505”。
编辑:回复回复
我认为后缀会解决这个问题。我怎样才能解决这个问题并仍然为我的两个 APK 使用单一源代码?
productFlavors{
training{
applicationIdSuffix ".training"
versionNameSuffix "-training"
}
production{
// applicationIdSuffix ""
// versionNameSuffix ""
}
}
编辑 2:
为 .training
风格添加额外的 list ,导致以下错误
/Users/myname/StudioProjects/appname/app/src/training/AndroidManifest.xml Error:
Overlay manifest:package attribute declared at AndroidManifest.xml:2:11-50 value=(com.compname.appname.training)
has a different value=(com.compname.appname.training) declared in main manifest at AndroidManifest.xml:2:11-41
Suggestion: remove the overlay declaration at AndroidManifest.xml and place it in the build.gradle:
flavorName {
applicationId = "com.compname.appname.training"
}
这个 flavorName 究竟会去哪里?
最佳答案
在你的build.gradle
中,
android.productFlavors {
dog {
applicationId "com.example.dog"
}
cat {
applicationId "com.example.cat"
}
}
现在你可以做,
$ gradle assembleDogDebug
或
$ gradle assembleCatDebug
等等
关于android - 安装从单一来源创建的 APK,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/41578413/