I want o implement push notification. I added to project level:
dependencies { classpath 'com.android.tools.build:gradle:2.2.2' classpath 'com.google.gms:google-services:3.0.0' }
and to app level:(at the bottom of the file)
.... compile 'com.squareup.okhttp3:okhttp:3.3.0' } apply plugin: 'com.google.gms.google-services'
Then I added google-services.json file to project in app level
But, when I syncro gradle, it launch the error:
No matching client found for package name "...."
In gradle I have 2 different build variants , and look like:
Manifest:
<manifest xmlns:android="http://schemas.android.com/apk/res/android" package="es.xxx.awsomeapp"> <uses-permission android:name="android.permission.INTERNET"/> <application android:name=".realm.XXXXXX" android:allowBackup="true" android:icon="@mipmap/ic_launcher_chv" android:label="@string/app_name" android:supportsRtl="true" android:theme="@style/AppTheme"> <activity
And finally the gradle:
apply plugin: 'com.android.application' apply plugin: 'realm-android' repositories { maven { url 'https://oss.sonatype.org/content/repositories/snapshots' } maven { url "https://s3.amazonaws.com/repo.commonsware.com" } maven { url "https://jitpack.io" } maven { url 'http://dl.bintray.com/amulyakhare/maven' } mavenCentral() } android { compileSdkVersion 24 buildToolsVersion "24.0.2" defaultConfig { minSdkVersion 16 targetSdkVersion 24 versionCode 1 versionName "1.0" testInstrumentationRunner "android.support.test.runner.AndroidJUnitRunner" } productFlavors { vanilla { applicationId "es.xxx.awsomeApp" resValue 'string', 'app_name', "Awsome" } chv { applicationId "es.xxx.awsomeApp.chv" resValue 'string', 'app_name', "Awsome CHV" signingConfig signingConfigs.chv_release } } buildTypes { release { minifyEnabled false proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro' } } testOptions { unitTests.returnDefaultValues = true } } dependencies { compile fileTree(include: ['*.jar'], dir: 'libs') androidTestCompile('com.android.support.test.espresso:espresso-core:2.2.2', { exclude group: 'com.android.support', module: 'support-annotations' }) //Auxiliar libraries compile 'org.igniterealtime.smack:smack-android-extensions:4.2.0-beta2' //Auxiliar libraries compile 'com.android.support:appcompat-v7:24.2.1' compile 'org.igniterealtime.smack:smack-android-extensions:4.2.0-beta2' compile 'org.igniterealtime.smack:smack-tcp:4.2.0-beta2' compile 'com.android.support.constraint:constraint-layout:1.0.0-beta2' compile 'com.android.support:design:24.2.1' compile 'com.android.support:recyclerview-v7:24.2.1' compile 'com.orhanobut:logger:1.15' compile 'com.amulyakhare:com.amulyakhare.textdrawable:1.0.1' compile 'com.github.Slyce-Inc:SlyceMessaging:1.1.2' compile 'io.realm:android-adapters:1.4.0' compile 'com.google.code.gson:gson:2.6.2' compile 'com.android.support:cardview-v7:24.2.1' compile 'com.rengwuxian.materialedittext:library:1.8.3' compile 'com.android.volley:volley:1.0.0' compile 'com.squareup.okhttp3:okhttp:3.3.0' compile 'com.google.firebase:firebase-messaging:9.8.0' testCompile 'junit:junit:4.12' testCompile 'org.robolectric:robolectric:3.0' testCompile 'com.android.support:appcompat-v7:24.2.1' testCompile 'org.igniterealtime.smack:smack-tcp:4.2.0-beta2' testCompile 'com.android.support.constraint:constraint-layout:1.0.0-beta2' testCompile 'com.android.support:design:24.2.1' testCompile 'com.orhanobut:logger:1.15' testCompile 'com.amulyakhare:com.amulyakhare.textdrawable:1.0.1' testCompile 'com.github.Slyce-Inc:SlyceMessaging:1.1.2' } apply plugin: 'com.google.gms.google-services'
And the firebase console.
How can I solve it?
Note, that json files are each one of their project.
The package name of an Android app uniquely identifies your app on the device, in Google Play Store, and in supported third-party Android stores.
xml file and change the application package name to the new one. Next go to the Firebase Project and delete the previous app and create a new one with new android package name. to add new app to the Firebase Project click on android icon. Next enter new credentials into the required fields.
The google-services. json file is generally placed in the app/ directory (at the root of the Android Studio app module).
I was facing the same error. I am using multiple flavors. Therefore, I put the google-services.json
in app/src/{flv}
directory.
It worked well for one flavor but did not work for others. The issue was that I have also placed google-services.json
corresponding to flavor for which it was working in app directory also.
Google will search for sub-directories / flavor directories only if it did not find the google-services.json
in the app directory.
So, make sure you don't put google-services.json
in app directory in case you have separate google-services.json
for multiple flavors.
Please see this article for mode details on Android product flavors.
{ "client_info": { "mobilesdk_app_id": "1:113908578702:android:a0a98decfd9f22466f4cdf", "android_client_info": { "package_name": "com.example.Appname" } } }
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With