Я создаю веб-приложение для ресторана и дошел до того, что мои Уведомления дают мне знать, когда принят новый заказ.Рабочий процесс приложения:
1) Официант входит в систему через Android Chrome для проверки ожидающих билетов
2) Клиент регистрирует билет, используя другое устройство
3) Уведомление отображается на устройстве официанта
До этого момента все работало нормально.Что я хочу знать: есть ли способ щелкнуть Уведомление во время использования другого приложения (или при просмотре главного экрана), чтобы открыть Chrome на соответствующей вкладке (где официант вошел в систему)?
Здесьмой код:
App.js
var n = _registration.showNotification('Menú',{
body: 'Tienes un nuevo pedido',
requireInteration: true,
});
Работник службы
self.addEventListener('notificationclick', function(event) {
let url = 'https://example.com/some-path/';
event.preventDefault();
event.notification.close(); // Android needs explicit close.
event.waitUntil(
clients.matchAll({type: 'window'}).then( windowClients => {
// Check if there is already a window/tab open with the target URL
for (var i = 0; i < windowClients.length; i++) {
var client = windowClients[i];
// If so, just focus it.
if (client.url === url && 'focus' in client) {
return client.focus();
}
}
// If not, then open the target URL in a new window/tab.
if (clients.openWindow) {
return clients.openWindow(url);
}
})
);
});
Это прекрасно работает снастольный браузер, но поскольку официант использует телефон на базе Android, этого будет недостаточно.Спасибо.