Prakhar Yadav
Prakhar Yadav

Reputation: 11

Firebase push notification in Ionic

I need help connecting my Ionic app to FCM. I need to send push notifications when entries in the Real Time Database are made. I have tried the following:

  1. Ionic Native Push
  2. Ionic Native FCM
  3. AngularFire2

But, all of the above approaches give me errors when I try to deploy to device or build the app, I get the following error:

Execution failed for task ':processDebugGoogleServices'.

Any idea how to proceed? I'm most probably not configuring Firebase properly. I have placed google-services.json in the root directory, no problems there.

Any help is much appreciated.

Upvotes: 0

Views: 462

Answers (2)

Anandh Sp
Anandh Sp

Reputation: 787

try to change this file under fcm plugin directory

/plugins/cordova-plugin-fcm/src/android/FCMPlugin.gradle

buildscript {
    repositories {
            jcenter()
            mavenLocal()
        }
    dependencies {
        classpath 'com.android.tools.build:gradle:+'
        classpath 'com.google.gms:google-services:3.0.0'
    }
}
// apply plugin: 'com.google.gms.google-services'
// class must be used instead of id(string) to be able to apply plugin from non-root gradle file
// apply plugin: com.google.gms.googleservices.GoogleServicesPlugin
ext.postBuildExtras = {
    apply plugin: com.google.gms.googleservices.GoogleServicesPlugin
}

Then

ionic cordova platform rm android
ionic cordova platform add android

then change this file /platforms/android/project.properties

# This file is automatically generated by Android Tools.
# Do not modify this file -- YOUR CHANGES WILL BE ERASED!
#
# This file must be checked in Version Control Systems.
#
# To customize properties used by the Ant build system edit
# "ant.properties", and override values to adapt the script to your
# project structure.
#
# To enable ProGuard to shrink and obfuscate your code, uncomment this (available properties: sdk.dir, user.home):
#proguard.config=${sdk.dir}/tools/proguard/proguard-android.txt:proguard-project.txt
# Project target.
target=android-26
android.library.reference.1=CordovaLib
cordova.system.library.1=com.facebook.android:facebook-android-sdk:4.+
cordova.system.library.2=com.google.firebase:firebase-core:11.4.2
cordova.system.library.3=com.google.firebase:firebase-messaging:11.4.2
cordova.gradle.include.1=cordova-plugin-fcm/mobile-FCMPlugin.gradle
cordova.system.library.4=com.google.android.gms:play-services-auth:11.4.2
cordova.system.library.5=com.google.android.gms:play-services-identity:11.4.2
cordova.system.library.6=com.android.support:support-v4:24.1.1+
cordova.gradle.include.2=cordova-support-google-services/mobile-build.gradle
cordova.gradle.include.3=twitter-connect-plugin/mobile-twitter.gradle
cordova.system.library.7=com.squareup.okhttp3:okhttp:3+

Then build

ionic cordova build android

Upvotes: 2

Akj
Akj

Reputation: 7231

You need to update cordova:

npm install -g cordova

Update FCM plugin by de-installing/re-installing:

cordova plugin rm cordova-plugin-fcm --save
cordova plugin add cordova-plugin-fcm --save

Upvotes: 0

Related Questions