Я использую Custom Url Scheme, чтобы обеспечить глубокое связывание с моим ионным приложением. Но в дополнение к открытию приложения, я хочу, чтобы путь прошел с глубокой ссылкой, чтобы открыть правильное состояние. Возникает ли какой-либо вопрос подходом ниже (который работает)? Или есть более чистый способ решения?Глубокое соединение в ионном
Test ссылка: myapp://somepath
- Пользователь нажимает ссылку, которая приложение открывает
- Custom Url Scheme звонки
handleOpenUrl(url)
, что экономитsomepath
в локальное хранилище перед открыть приложение $ionicplatform.on('resume'...)
вызововcheckExternalUrl
, который проверяет локальное хранилище дляexternalUrl
и, если он найдет путь, сохраненный там, затем перейдет к этому пути, используяwindow.location.href
WWW/приложение/JS/app.js:
function handleOpenURL(url) {
var path = url.slice(8) // strips away myapp://
window.localStorage.setItem("externalUrl", path);
}
angular.module('myapp', ['ionic', 'ngCordova'])
.run(function($rootScope, $ionicPlatform, $localstorage) {
$ionicPlatform.ready(function() {
function checkExternalUrl(){
var externalUrl = $localstorage.get('externalUrl', false)
if (externalUrl){
window.location.href = '#' + externalUrl
$localstorage.removeItem('externalUrl')
}
}
$ionicPlatform.on('resume', function(){
checkExternalUrl()
})
});
});
Было бы неплохо, если бы вы добавили некоторые детали своего ответа. Ссылки могут быть недоступны через некоторое время. –