mori mori - 4 months ago 115x
Android Question

My device doesn't receive other notification (FCM)

I migrated to Firebase Cloud Messaging and when first tried sending message I received a notification using the console in Firebase and then attempted to send another notification after a few minutes but i no longer receives another notification but in my firebase console it said that it was



Here is my code


public class MainActivity extends Activity {
protected void onCreate(Bundle savedInstanceState) {


Log.i(TAG, "InstanceID token: " + FirebaseInstanceId.getInstance().getToken());



public class MyFirebaseInstanceIDService extends FirebaseInstanceIdService {

public void onTokenRefresh() {
// Get updated InstanceID token.
String refreshedToken = FirebaseInstanceId.getInstance().getToken();
Log.d(TAG, "Refreshed token: " + refreshedToken);



public class MyFirebaseMessagingService extends FirebaseMessagingService {

private static final String TAG = "MyFirebaseMsgService";

// [START receive_message]
public void onMessageReceived(RemoteMessage remoteMessage) {

Log.d(TAG, "From: " + remoteMessage.getFrom());
Log.d(TAG, "Notification Message Body: " + remoteMessage.getNotification().getBody());
// [END receive_message]

it seems that other devices receives it but the other devices doesn't received it.


Due to AdamK's comment asking if I send the second notification while in foreground, I found out that notification is only triggered when my app is in the background.

In the documentation it was said that in onMessageReceived(), If the application is in the foreground handle both data and notification messages in the onMessageReceived(). Therefore a notification will not be triggered automatically if the app is in foreground, so in order to do that, in your onMessageReceived() callback you need to trigger a notification yourself.

I call my own sendNotification() method inside my onMessageReceived():


Which shows the notification even when the app is in the foreground.