深层链接不会从浏览器传递URL

时间:2018-06-11 21:56:29

标签: android reactjs react-native deep-linking

我有一个本机应用程序,它有一个根App.js组件。在那里,我有如下代码:

import { Linking, ... } from 'react-native';
// other imports

export default class App extends Component {
  componentDidMount() {
    Linking.getInitialURL().then((url) => {
      console.log('URL:', url);
    });
  }

  render() {
    // render the application...
  }
}

我设置了清单,以便捕获此网址:

<activity
    android:name=".MainActivity"
    android:label="@string/app_name">
     <intent-filter>
        <action android:name="android.intent.action.VIEW"/>
        <category android:name="android.intent.category.DEFAULT"/>
        <category android:name="android.intent.category.BROWSABLE"/>
        <data android:host="clamberdev.page.link" android:scheme="https"/>
    </intent-filter>
</activity>

当我使用以下启动选项从Android Studio运行此应用时:

Android launch options

它按预期工作,我可以看到登录到控制台的URL。

当我在手机上打开Firefox或Chrome并尝试访问https://clamberdev.page.link/gym-visits-new时,它会打开我的应用程序,但记录到控制台的值将是null(或未定义,可以&#t; t记得)。无论应用程序是关闭还是仅仅背景,都会发生这种情况。

如何在深度链接浏览器时将URL记录到控制台?

我尝试过使用launchMode="singleTask"但似乎无法发挥作用。

0 个答案:

没有答案