サーチ…


前書き

リンクAPIを使用すると、アプリケーション間でリンクを送受信できます。たとえば、電話番号をダイヤルインして電話アプリを開くか、Googleマップを開き、選択した目的地へのナビゲーションを開始します。リンクを利用して、他のアプリケーションから開いているリンクにアプリが応答できるようにすることもできます。

Linkingを使用するには、最初にそれをreact-nativeからインポートする必要があります

import {Linking} from 'react-native'

発信リンク

リンクを開くにはopenURLを呼び出します。

Linking.openURL(url)
.catch(err => console.error('An error occurred ', err))

推奨される方法は、インストールされたアプリケーションがあらかじめ指定されたURLを処理できるかどうかを確認することです。

Linking.canOpenURL(url)
.then(supported => {
  if (!supported) {
    console.log('Unsupported URL: ' + url)
  } else {
    return Linking.openURL(url)
  }
}).catch(err => console.error('An error occurred ', err))

URIスキーム

対象アプリ参照
ウェブブラウザ https://stackoverflow.com
電話 tel:1-408-555-5555 林檎
郵便物 mailto:[email protected] 林檎
SMS sms:1-408-555-1212 林檎
アップルマップ http://maps.apple.com/?ll=37.484847,-122.148386 林檎
グーグルマップ geo:37.7749,-122.4194 Google
iTunes iTunes Link Makerを参照してください 林檎
フェイスブック fb://profile スタックオーバーフロー
YouTube http://www.youtube.com/v/oHg5SJYRHA0 林檎
ファースタイム facetime://[email protected] 林檎
iOSカレンダー calshow:514300000 [1] iPhoneDevWiki

[1] 2001年1月1日(UTC?)から指定された秒数でカレンダーを開きます。何らかの理由で、このAPIはAppleによって文書化されていません。

インカムリンク

外部URLからアプリを起動するタイミングを検出できます。

componentDidMount() {
  const url = Linking.getInitialURL()
  .then((url) => {
    if (url) {
      console.log('Initial url is: ' + url)
    }
  }).catch(err => console.error('An error occurred ', err))
}

あなたのプロジェクトにiOS Link RCTLinkingこれを有効にする。

Androidでこれを有効にするには、 次の手順従います



Modified text is an extract of the original Stack Overflow Documentation
ライセンスを受けた CC BY-SA 3.0
所属していない Stack Overflow