FirebaseMessagingService не запускает обратные вызовы - PullRequest
0 голосов
/ 30 мая 2018

Я написал код с FirebaseMessagingService для чтения уведомлений.Приложение является частью Android и частично реагировать родной.ПРОБЛЕМА: вызывается FirebaseMessagingService onCreate (), но обратный вызов onMessageReceived не запускается, даже когда приложение находится на переднем плане.Более того, во всех уведомлениях есть данные.

Это код службы обмена сообщениями Firebase, который я написал.

package com.lockquick;

import android.content.Context;
import android.content.Intent;
import android.media.RingtoneManager;
import android.support.v4.content.LocalBroadcastManager;
import android.widget.Toast;

import com.google.firebase.messaging.FirebaseMessagingService;
import com.google.firebase.messaging.RemoteMessage;



import com.google.firebase.messaging.FirebaseMessagingService;

public class NotificationService extends FirebaseMessagingService {
    private LocalBroadcastManager broadcaster;

    @Override
    public void onCreate() {

        Toast.makeText(getApplicationContext(), "NotificationService  created", Toast.LENGTH_SHORT).show();

         //This part is working fine

        broadcaster = LocalBroadcastManager.getInstance(this);
    }

    @Override
    public void onMessageReceived(RemoteMessage remoteMessage) {
        Intent intent = new Intent("MyData");


        String s= remoteMessage.getData().get("Type");

        // This part is not working.
        Toast.makeText(getApplicationContext(), "onMessageReceived  called" + s, Toast.LENGTH_SHORT).show();

        if(s.equals("S")){
            intent.putExtra("s", remoteMessage.getData().get("S"));
            broadcaster.sendBroadcast(intent);
        }

    }
}

Я запускаю службу обмена сообщениями Firebase из собственного модуля реагирования.

            // Notificatons test
            LocalBroadcastManager.getInstance(getReactApplicationContext()).registerReceiver((mMessageReceiver),
                    new IntentFilter("MyData")
            );


            getReactApplicationContext().startService(new Intent(this.getReactApplicationContext(), NotificationService.class));
...