Как вызвать метод в классе MainActivity из класса Firebase Messaging Service? - PullRequest
1 голос
/ 31 марта 2019

Я пытался вызвать метод в MainActivity из службы сообщений.Я пробовал несколько способов, все из StackOverflow, но ни один, кажется, не работает.Вот что я сделал до сих пор.

Я просто хочу показать диалоговое окно после получения уведомления.

Это метод в MessagingServiceclass.

sendNotification(title, message);
            Intent pushNotification = new Intent("PushNotification");
            pushNotification.putExtra("message", message);
            pushNotification.putExtra("title", title);
            pushNotification.putExtra("code", code);
            LocalBroadcastManager.getInstance(this).sendBroadcast(pushNotification);

            savetodatabase(title,message);

Последняя строка сохраняет уведомление в базе данных SQL и работает нормально, что означает, что код над ним выполняется.

В моем классе MainActivity я вызываю BroadcastReceiver с использованием кода ниже

  BroadcastReceiver mRegistrationBroadcastReceiver = new BroadcastReceiver() {
            @Override
            public void onReceive(Context context, Intent intent) {

                Toast.makeText(context, "Called", Toast.LENGTH_SHORT).show();

                if (intent.getAction().equals(NOTIFICATION)) {
                    String title = intent.getStringExtra("title");
                    String message = intent.getStringExtra("message");
                    String code = intent.getStringExtra("code");
                    showDialog(title, message, code);
                }
            }
        };

Однако метод внутри OnReceive не вызывается.

Я также попытался скопировать метод, который я хочу выполнить после получения уведомления в классе сообщений, но все ещеэто не называется.

Где я иду не так?

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...