Recherche…


Introduction

L'API de liaison vous permet d'envoyer et de recevoir des liens entre les applications. Par exemple, ouvrez l'application Téléphone avec le numéro composé ou ouvrez Google Maps et lancez une navigation vers la destination choisie. Vous pouvez également utiliser Linking pour que votre application puisse répondre aux liens qui l’ouvrent depuis d’autres applications.

Pour utiliser Linking vous devez d'abord l'importer depuis react-native

import {Linking} from 'react-native'

Liens sortants

Pour ouvrir un appel de lien openURL.

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

La méthode préférée consiste à vérifier si une application installée peut gérer une URL donnée au préalable.

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))

Schémas d'URI

Application cible Exemple Référence
Navigateur Web https://stackoverflow.com
Téléphone tel:1-408-555-5555 Pomme
Courrier mailto:[email protected] Pomme
SMS sms:1-408-555-1212 Pomme
Apple Maps http://maps.apple.com/?ll=37.484847,-122.148386 Pomme
Google Maps geo:37.7749,-122.4194 Google
iTunes Voir iTunes Link Maker Pomme
Facebook fb://profile Débordement de pile
Youtube http://www.youtube.com/v/oHg5SJYRHA0 Pomme
Facetime facetime://[email protected] Pomme
Calendrier iOS calshow:514300000 [1] iPhoneDevWiki

[1] Ouvre le calendrier au nombre de secondes indiqué depuis le 1. 1. 2001 (UTC?). Pour une raison quelconque, cette API n'est pas documentée par Apple.

Liens entrants

Vous pouvez détecter le lancement de votre application à partir d'une URL externe.

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

Pour activer cela sur iOS Link RCTLinking à votre projet .

Pour activer cela sur Android, procédez comme suit .



Modified text is an extract of the original Stack Overflow Documentation
Sous licence CC BY-SA 3.0
Non affilié à Stack Overflow