reactjs - 单击通知时导航到特定屏幕 - React Native
问题描述
我在我的 React Native 应用程序中使用 react-native-firebase 库来实现 FCM 功能。我遵循了他们网站https://rnfirebase.io/docs/v4.2.x/installation/initial-setup上提供的初始指南。我还为 Android 设置了云消息传递和通知模块。通知正确到达设备。但是,问题是单击通知时我无法路由到特定屏幕。我正在使用 react-navigation 库进行导航。我实际上对 React native 很陌生,所以我不知道如何为这个功能编写代码。任何帮助表示赞赏。最主要的是我很困惑我应该在哪里编写导航代码。此外,即使应用程序关闭并单击通知,我也希望它能够工作。
解决方案
如何在 react-navigation 中设置深度链接:https ://reactnavigation.org/docs/en/deep-linking.html
如何设置通知以触发深层链接:
handleNotification (notification) {
const { data } = notification;
const prefix = Platform.OS === 'android'
? 'myapp://myapp/'
: 'myapp://'
const url = `${prefix}${data.path}/${data.id}`;
if (notification.data.path) {
Linking.openURL(url).catch(err => console.error(err));
firebase.messaging().setBadgeNumber(0);
}
}
推荐阅读
- python - 错误将字符串变量作为文件名传递以打开文件
- python - Python Plotly - 交互式更新图形属性
- git - 在 Github Desktop 的 Repository Settings 中,我可以安全地在 To Contribute To Parent Repository 和 For my own purpose 之间来回切换吗?
- javascript - 我在 node.js 中的 for 循环有问题,在生产中使用 express,但不是开发模式
- java - Mysql 在 Mac OS 中使用 java JDBC
- gnuplot - 我们如何设置刻度的宽度?
- roblox - 枪支重装有时不起作用。罗布洛克斯工作室
- forms - 在该月的给定日期关闭 Google 表单并在该月的给定日期再次打开表单
- algorithm - 在平均情况下以一个字节存储国际象棋移动
- react-native - React Native 中的通知屏幕