#ios #apple-push-notifications #capacitor
Вопрос:
У меня есть приложение для iOS angular/capacitor, которое может получать push-уведомления и управлять ими с помощью события конденсатора:
// Method called when tapping on a notification
PushNotifications.addListener('pushNotificationActionPerformed',
async (action: ActionPerformed) => {
await this.router.navigateByUrl('url/to/go')
console.log('logic done);
}
);
То, что происходит с касанием, абсолютно уникально: журналы подтверждают, что мои действия выполнены, но в моем приложении ничего не происходит, пока я не коснусь какой-либо части пользовательского интерфейса. Затем маршрут правильно обновится до пункта назначения.
Протестировано в iPhone 6 iOS 12.5
Как такое может быть?
Ответ №1:
Я нашел решение самостоятельно: по какой-то причине ? не могу объяснить, что мне нужно завернуть инструкцию маршрутизатора в службу NgZone:
this.NgZone.run (() = > this.router.navigateByUrl(путь));
Если кто-нибудь сможет это объяснить, я буду признателен 🙂