react-native
Liaison de l'API native
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 | |
iTunes | Voir iTunes Link Maker | Pomme |
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 .