react-native
Связывание родного API
Поиск…
Вступление
Связывание 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:1-408-555-1212 | яблоко |
Apple Maps | http://maps.apple.com/?ll=37.484847,-122.148386 | яблоко |
Карты Гугл | geo:37.7749,-122.4194 | |
Itunes | См. ITunes Link Maker | яблоко |
fb://profile | Переполнение стека | |
YouTube | http://www.youtube.com/v/oHg5SJYRHA0 | яблоко |
Facetime | facetime://[email protected] | яблоко |
Календарь iOS | calshow:514300000 [1] | iPhoneDevWiki |
[1] Открывает календарь в указанное количество секунд с 1. 1. 2001 (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, выполните следующие действия .