簡體   English   中英

從其他應用程序React Native深層鏈接

[英]React Native deep linking from other app

我們的應用程序應該在company:// upload上提供。 我創建了itent-filter:

<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:scheme="company"
    android:host="upload" />
</intent-filter>

它正在打開應用程序,但在反應本機內部我無法捕獲該URL。 我的實施:

componentWillMount() {
  Linking
    .getInitialURL()
    .then(event => this.handleOpenURL(event))
    .catch(console.error);
  Linking.addEventListener('url', this.handleOpenURL);
  this.props.loadCredentials();
}

handleOpenURL(event) {
  console.log(event);
  switch (event.url) {
    case `${Config.APP_SCHEMA}upload`:
      Actions.Upload();
      break;
    default:
      Actions.Home();
  }
}
  • 實現在router.js ,這是第一個React組件。
  • intent-filter位於.MainActivity中
  • 當我點擊另一個應用程序上的應用程序時,它正在打開它,因此鏈接的java部分正在工作。

版本:

  • "react-native": "0.42.0",
  • Android SDK 23

我寫了一個用於測試深層鏈接的腳本:

adb shell am start -W -a android.intent.action.VIEW -d "company://$1" com.companyapps/.MainActivity

深層鏈接是正確的,問題在於我的應用程序的Java部分。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM