我正在修改当前的
android项目,因此它可以安装在同一设备上,用于多种口味和构建配置.
的build.gradle:
{
// ...
defaultConfig {
applicationId "com.myapp"
manifestPlaceholders = [
manifestApplicationId: "${applicationId}",
onesignal_app_id: "xxxx",
onesignal_google_project_number: "xxxx"
]
// ...
}
productFlavors {
production {
applicationId "com.myapp"
// ...
}
dev {
applicationId "com.myapp.dev"
// ...
}
// ...
}
buildTypes {
release {
// ...
}
debug {
applicationIdSuffix ".debug"
// ...
}
}
// ...
}
AndroidManifest.xml中:
android:name="${applicationId}.permission.C2D_MESSAGE"
android:protectionLevel="signature" />
android:name="com.onesignal.GcmBroadcastReceiver"
android:permission="com.google.android.c2dm.permission.SEND" >
当我编译相同风格的调试版和发行版时,我收到错误消息:
…
INSTALL_FAILED_DUPLICATE_PERMISSION
烫发= com.myapp.permission.C2D_MESSAGE
PKG = com.myapp.dev
…
manifestApplicationId占位符来自OneSignal库上的AndroidManifest.xml,如https://documentation.onesignal.com/docs/android-sdk-setup所示
有谁知道如何解决这个问题?谢谢.