我有一个本机应用程序,它有一个根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运行此应用时:
它按预期工作,我可以看到登录到控制台的URL。
当我在手机上打开Firefox或Chrome并尝试访问https://clamberdev.page.link/gym-visits-new
时,它会打开我的应用程序,但记录到控制台的值将是null
(或未定义,可以&#t; t记得)。无论应用程序是关闭还是仅仅背景,都会发生这种情况。
如何在深度链接浏览器时将URL记录到控制台?
我尝试过使用launchMode="singleTask"
但似乎无法发挥作用。