单击通知时导航到特定屏幕-React Native

时间:2018-06-25 16:40:15

标签: reactjs react-native firebase-cloud-messaging hybrid-mobile-app

我在我的React Native应用程序中使用react-native-firebase库来实现FCM功能。我遵循了他们网站https://rnfirebase.io/docs/v4.2.x/installation/initial-setup上提供的初始指南。我还为Android设置了Cloud Messaging and Notifications模块。通知正确到达设备。但是,问题是单击通知后,我无法路由到特定屏幕。我正在使用react-navigation库进行导航。我实际上对React本机非常陌生,所以我不知道如何为该功能编写代码。任何帮助表示赞赏。 最主要的是我很困惑应该在哪里编写导航代码。另外,即使关闭应用程序并单击通知,我也希望它能正常工作。

1 个答案:

答案 0 :(得分:3)

如何在反应导航中设置深层链接: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);
    }
  }