Я реализовал уведомления pu sh с использованием облачной функции Firebase для android и IOS. Когда приложение закрыто, сообщение получено в панели уведомлений. При нажатии на сообщение приложение открывается без проблем как для IOS, так и для Android
Когда приложение android открыто и сообщение получено, сообщение отображается в панели уведомлений.
Однако, когда приложение IOS открыто и сообщение получено, оно отображается во всплывающем окне в верхней части экрана, однако внутри приложения я получаю сообщение «Не удалось отобразить уведомление». и я не совсем уверен, где я должен это исправить.
Ниже представлен мой список уведомлений;
useEffect(() => {
this.removeNotificationDisplayedListener = firebase.notifications().onNotificationDisplayed((notification) => {
console.log('NOTI DISPLAY', notification);
// Process your notification as required
// ANDROID: Remote notifications do not contain the channel ID. You will have to specify this manually if you'd like to re-display the notification.
});
this.removeNotificationListener = firebase.notifications().onNotification((notification) => {
// Process your notification as required
console.log('NOTI Normal', notification);
notification
. android .setChannelId ('channelId'). android .setSmallIcon ('ic_launcher');
const localNotification = new firebase.notifications.Notification()
.setNotificationId(notification.notificationId)
.setTitle(notification.title)
.setSound('default')
.setSubtitle(notification.subtitle)
.setBody(notification.body)
.setData(notification.data)
.ios.setBadge(notification.ios.badge);
localNotification.android.setChannelId('channelid');
console.log('SHOW NOTIFICATION', localNotification);
firebase.notifications()
.displayNotification(localNotification)
.catch(err => console.error(err));
});
return () => {
console.log('I AM CLEANING')
}
}, []);