我有一個多個flavours
和多個buildType
的項目。Android的Firebase消息上傳不是射擊
我先說明我的項目結構,然後再繼續:
app
- src
- main
- flavour1
- flavour2
以上就是我目前的項目結構。現在我要粘貼下面我build.gradle
productFlavors {
flavour1 {
applicationId "com.myproject.flavour1"
signingConfig signingConfigs.release
}
flavour2 {
applicationId "com.myproject.flavour2"
signingConfig signingConfigs.release
}
}
buildTypes {
release {
minifyEnabled false
proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro'
}
debug {
applicationIdSuffix '.debug'
debuggable true
}
qa {
applicationIdSuffix '.qa'
debuggable true
}
}
dependencies {
compile fileTree(include: ['*.jar'], dir: 'libs')
compile 'com.google.firebase:firebase-messaging:9.0.0'
compile 'com.google.android.gms:play-services-analytics:9.0.0'
}
apply plugin: 'com.google.gms.google-services'
現在我想要做到的是有一個特定的google-services.json
每個構建變量,這樣我可以使用每個構建變量不同火力地堡雲端通訊項目。
事情是這樣的:
app
- src
- main
- flavour1
- debug
- google-services.json <-- connected to Debug FCM Project
- qa
- google-services.json <-- connected to QA FCM Project
- flavour2
- debug
- google-services.json <-- connected to Debug FCM Project
- qa
- google-services.json <-- connected to QA FCM Project
這個方法我試過,而且它不工作。沒有上行消息正被髮送到服務器。我嘗試將google-services.json
移動到根目錄並刪除所有其他json
文件,然後我發現郵件正在發送。我認爲這得到了classpath 'com.google.gms:google-services:3.0.0'
的支持,這是我包含在我的build.gradle
文件中的東西。
如果我錯過了一個步驟,或者如果我不正確地做某件事,請賜教。