Я отправляю уведомления pu sh в своем приложении и хочу иметь возможность показывать их, даже если приложение уже запущено, поэтому я пытаюсь использовать функцию onMessageReceived (). Функция запускается всякий раз, когда я отправляю уведомление, и я вижу, что заголовок и тело уведомления правильные, так что пока никаких проблем. Затем я хочу, чтобы уведомление появилось на устройстве пользователя, но по какой-то причине я просто не могу заставить его работать. Я просмотрел множество сайтов и просмотрел вопросы о stackoverflow, и весь код в основном выглядит одинаково, поэтому меня немного сбивает с толку, почему он не работает для меня.
@Override
public void onMessageReceived(@NonNull RemoteMessage remoteMessage) {
super.onMessageReceived(remoteMessage);
String messageTitle = remoteMessage.getNotification().getTitle();
String messageBody = remoteMessage.getNotification().getBody();
System.out.println("TITLE_IS: " + messageTitle);
System.out.println("MESSAGE_BODY: "+ messageBody);
NotificationCompat.Builder mBuilder = new NotificationCompat.Builder(this, getString(R.string.default_notification_channel_id))
.setSmallIcon(R.mipmap.ic_launcher)
.setContentTitle(messageTitle)
.setContentText(messageBody);
//Sets ID for the notification
int mNotificationId = (int) System.currentTimeMillis();
NotificationManager mNotifyMgr = (NotificationManager) getSystemService(NOTIFICATION_SERVICE);
mNotifyMgr.notify(mNotificationId, mBuilder.build());
System.out.println("Everything went fine");
}
Он никогда не печатает последнюю строку («Все прошло нормально "), но также не выдает ошибок, поэтому кажется, что это работает, хотя это не так. В чем проблема и как ее исправить?