Я искал в интернете и нашел отличный учебник для YouTube , который приближает меня к работе с ионными глубокими ссылками.
Используя симулятор андроида, я вижу, что мойтекущая настройка совпадает с маршрутом, который я пытаюсь использовать при доступе к пути / match внутри приложения.
Я буду в конечном итоге запускать этот код в функции обратного вызова push-уведомлений, нодля тестирования я вызываю глубокие ссылки на initializeApp ().
Я использовал кодовое перо, как предлагает учебник, и это дает некоторое представление о том, что происходит при использовании эмулятора. Когда ссылка нажата, я вижу некоторую информацию, которая со вчерашнего дня, я изо всех сил пытался найти способ надлежащим образом получить доступ к такой информации.
пример codepen:
<h1><a href="sideline://sidelineapp.io/match">Alert</a></h1>
Iмой app.component.ts настроен так:
initializeApp() {
this.platform.ready().then(() => {
if(localStorage.getItem('config') !== null){
localStorage.removeItem('config');
}
this.splashScreen.hide();
timer(3000).subscribe(() => {
this.showSplash = false;
});
if (this.platform.is('cordova')) {
this.oneSignalPush();
console.log('onesignal');
}
this.deeplinks.route({
'/match': StatsComponent,
}).subscribe((match) => {
alert(JSON.stringify(match.$link.path));<-- this alerts the correct path
this.router.navigate([match.$link.path]);<-- this routes to /match
console.log('match', match)
}, (nomatch) => {
nomatch.$link
alert(JSON.stringify(nomatch));
console.log('no match', nomatch)
})
});
}
объект, который регистрируется в консоли, выглядит так (извините, просто картинка):
Я вижу, что $ route найден, но, поскольку путь требует, чтобы компонент для представления отображался, как мой app-routing.module.ts, а не Ionic Page, представление не 'т рендер. Графика загрузки просто зависает, и компонент не инициализируется после того, как маршрут найден.
Кто-нибудь может предложить решение этой проблемы? Я видел примеры разработчиков, использующих для этого угловые модули, но не компоненты. Есть ли что-то еще, что я должен делать?