Следите за установленными экземплярами pwa - PullRequest
0 голосов
/ 11 декабря 2018

Мы хотим отслеживать каждую установку pwa для пользователя.Таким образом, мы могли отслеживать уведомления, как если бы каждый экземпляр установленного пользователя приложения (ПК или телефон, или ff, или chrome) получил обновление.Можем ли мы знать, что экземпляр pwa был удален?Можем ли мы знать, что веб-пуш был доставлен каждому экземпляру?

1 Ответ

0 голосов
/ 12 декабря 2018

У вашего работника службы отправьте сообщение http на ваш сервер в событии "install".Вам нужно будет получить свой идентификатор пользователя из indexdb или подобного.Используйте "fetch", а не xmlhttp работника службы.

self.addEventListener('install', function(e) {
    console.log('[ServiceWorker] Install');
    e.waitUntil(
        caches.open(cacheName).then(function(cache) {
            console.log('[ServiceWorker] Caching app shell');
            var rc = cache.addAll(filesToCache);
            postServerStatus( "installcomplete" );
            return rc;
        })
    );
});

function postServerStatus( strStatus ) {
    var strUserID = "getfromindexdb";
    fetch('./datasvc.aspx', {
        method: 'post',
        headers: {
            'Content-type': 'application/json'
        },
        body: JSON.stringify({
            service: strStatus,
            userid: strUserID
        }),
     });
}
...