PushBase Firebase Notification

I implemented Firebase for push notifications in my Android app. I implemented two services for registering a token and for creating a notification when it is detected. When my application starts, it works, but when my application is closed, it does not work.

public class FirebaseinstanceIdService extends FirebaseInstanceIdService { @Override public void onTokenRefresh() { String refreshedToken = FirebaseInstanceId.getInstance().getToken(); Log.e("Firebase", refreshedToken); MainActivity.setFirebaseToken(refreshedToken); } } public class MyFirebaseMessageService extends FirebaseMessagingService { private static final String TAG = "MyFirebaseMsgService"; @Override public void onMessageReceived(RemoteMessage remoteMessage) { //Displaying data in log //It is optional Log.e(TAG, "From: " + remoteMessage.getFrom()); Log.e(TAG, "Notification Message Body: " + remoteMessage.getData().get("title")); //Calling method to generate notification sendNotification(remoteMessage.getData()); } //This method is only generating push notification //It is same as we did in earlier posts private void sendNotification(Map<String, String> notification) { Intent intent = new Intent(this, MainActivity.class); intent.addFlags(Intent.FLAG_ACTIVITY_CLEAR_TOP); PendingIntent pendingIntent = PendingIntent.getActivity(this, 0, intent, PendingIntent.FLAG_ONE_SHOT); Uri defaultSoundUri= RingtoneManager.getDefaultUri(RingtoneManager.TYPE_NOTIFICATION); NotificationCompat.Builder notificationBuilder = new NotificationCompat.Builder(this) .setSmallIcon(R.mipmap.ic_launcher) .setContentTitle(notification.get("title")) .setContentText(notification.get("body")) .setAutoCancel(true) .setSound(defaultSoundUri) .setContentIntent(pendingIntent); NotificationManager notificationManager = (NotificationManager) getSystemService(Context.NOTIFICATION_SERVICE); notificationManager.notify(0, notificationBuilder.build()); } } 

And my manifest:

  <service android:name=".FirebaseinstanceIdService"> <intent-filter> <action android:name="com.google.firebase.INSTANCE_ID_EVENT"/> </intent-filter> </service> <service android:name=".MyFirebaseMessageService"> <intent-filter> <action android:name="com.google.firebase.MESSAGING_EVENT"/> </intent-filter> </service> 

And my request:

 { "to": "ex1CtVz5bbE:APA91bHiM_BCun62A9iCobF1yV26Dwn-hYCDhkYPoWEG5ZdqH0P28UsE5q1v7QibwAX7AJ290-9en9L6f548_2b7WEbJ8RPEWlIotLczjjCP7xEOWqeJk6Iz44vilWYvdu4chPwfsvXD", "data": { "title": "Notification", "body": "Message", } } 

I already found some solutions in StackOverflow, but in my case this does not work. I have an API that calls an API request message: https://fcm.googleapis.com/fcm/send

So, there is my question: Does Firebase process a push notification when the application is closed and how?

thank you for your responses

+6
source share
1 answer

FCM supports notifications when the application is closed. Your code seems to be in order, so I believe that economizers (or energy-saving devices) can kill your notifications. I had such problems on my Asus Zenfone, they were also reported in cases of using Huawei and Xiaomi. Just disable them or add the application to the exclusion list, if any. Also, in the latest releases of Android there is a new power-saving mode, try disabling it as well.

+5
source

All Articles