深度链接的屏幕自动返回到先前的屏幕-ReactNative Android

时间:2020-05-26 17:59:47

标签: android react-native react-native-android react-navigation deep-linking

我正在用react native创建一个通知提醒应用程序,我试图在用户点击通知时在应用程序中打开特定屏幕,我正在使用react-navigation并尝试与屏幕路径进行深度链接。所以我的问题是,当应用程序已经处于前台状态时,深层链接屏幕可以很好地打开,但是如果我在应用程序关闭时(即使不是最近)打开通知,它将进入深层链接屏幕并立即返回返回上一个屏幕。

我正在useEffect中进行一些异步操作。不确定是否是问题所在,可以不胜感激。

useEffect(() => {
   const paramObject = navigation.getParam('someObject', {});
   if (Object.keys(paramObject).length === 0) {
      const resourceID = navigation.getParam('resource_id', '');
      const target = navigation.getParam('target', '');
      axios.get().then(() => { 
      // some state setting 
      }).catch(); #Some api call
   }
}, []);

注意:当关闭应用程序时打开深度链接页面时会发生问题,我也收到一些警告,例如无法对未安装的组件执行反应状态更新...

1 个答案:

答案 0 :(得分:0)

我认为您的问题是应用导航到初始路线。

强制深层链接在执行任何操作之前等待1000毫秒,以确保应用程序在完成任何操作之前均已正确加载。

另一种方法是修改您的动态initialRoute,以识别该应用已通过深度链接打开,并且在那种情况下不做任何事情。