#react-native #push-notification #firebase-cloud-messaging
#реагировать-родной #push-уведомление #firebase-облако-обмен сообщениями #react-native
Вопрос:
Я настраиваю систему уведомлений с помощью firebase и react native. Это работает нормально, но когда я получаю уведомление в любом состоянии приложения (отключено, переднее или фоновое) и нажимаю уведомление, оно выводит меня на главный экран. Я хочу перейти на экран уведомлений, когда кто-то нажимает на уведомление. Как это будет возможно?
Ответ №1:
Во-первых, вы должны добавить прослушиватель уведомлений Firebase в компонент верхнего уровня. Я предложу разместить его в App.js .
После этого вам нужно перейти к определенному экрану с помощью навигационного реквизита. если вы разместите прослушиватель в App.js тогда у вас не будет доступа к навигации, поскольку App.js вернет контейнер навигации. Для этого вам нужно создать одну вспомогательную функцию, подобную этой навигации без поддержки
например
export const App = () => {
messaging().setBackgroundMessageHandler(async remoteMessage => {
navigate('Notification'); //navigate to notification screen
});
const unsubscribe = messaging().onMessage(async remoteMessage => {
//generate local notification using your preferred library
//handle navigation
})
return <RootNavigator />;
};