Когда приложение закрыто, ваши уведомления обрабатываются процессом Службы Google, который заботится о том, чтобы отображать ваши уведомления по мере необходимости, включая действие по умолчанию, щелкающее (открытие приложения) и значок уведомления.
Когда приложение находится на переднем плане, полученные сообщения обрабатываются приложением, и, поскольку нет логики для его обработки, ничего не произойдет!
Вы можете создать пользовательский FirebaseMessagingService
, который реализует onMessageReceived
изатем создайте в нем уведомление ..
public class NotificationService extends FirebaseMessagingService {
@Override
public void onMessageReceived(RemoteMessage remoteMessage) {
super.onMessageReceived(remoteMessage);
Notification notification = new NotificationCompat.Builder(this)
.setContentTitle(remoteMessage.getNotification().getTitle())
.setContentText(remoteMessage.getNotification().getBody())
.setSmallIcon(R.mipmap.ic_launcher)
.build();
NotificationManagerCompat manager = NotificationManagerCompat.from(getApplicationContext());
manager.notify(some_int_number (eg : 123), notification);
}
}
И добавьте это в свой файл манифеста *1011*
<service android:name=”.NotificationService”>
<intent-filter>
<action android:name=”com.google.firebase.MESSAGING_EVENT”/>
</intent-filter>
</service>
Также убедитесь, что вы дали правильное разрешение в файле манифеста.После внедрения попробуйте еще раз, вы должны увидеть уведомление, когда ваше приложение находится на переднем плане.