Автономная аналитика Google Workbox не работает должным образом - PullRequest
0 голосов
/ 12 сентября 2018

Я пытаюсь следовать примеру: https://developers.google.com/web/tools/workbox/modules/workbox-google-analytics

Я создал учетную запись Google Analytics, а затем создал PWA, используя https://codelabs.developers.google.com/codelabs/workbox-lab/#0. PWA из лаборатории работаеткак и ожидалось.

Затем я создал собственное измерение (измерение1) и пользовательскую метрику (metric1) в Google Analytics.Когда я отправляю измерение и метрику в коде при загрузке страницы, это отображается в аналитических отчетах Google.

ga('create', 'UA-125355230-1', 'auto');
//ga('send', 'event', 'category', 'action', { 'metric1': 100 });
ga('set', 'dimension1', 'online');
ga('send', 'pageview');  

Затем в sw.js (работник службы js) я добавил следующий код, как сказано в руководстве:

workbox.googleAnalytics.initialize({
    parameterOverrides: {
    dimension1: 'offline',
},
hitFilter: (params) => {
    const queueTimeInSeconds = Math.round(params.get('qt') / 1000);
    params.set('metric1', queueTimeInSeconds);
},
});

Я остановил приложение иобновил index.html несколько раз.Я вернул приложение в оперативный режим и попытался синхронизировать работника службы, используя имя очереди workbox-background-sync: workbox-google-analytics.

Это вызывает код фонового плагина, но он не находит ничего для отправки.

Те же результаты, когда я пытался отключить сеть в devtools.

В отладчике изначально вызывается createRequestWillReplayCallback для workbox-google-analytics.dev.js, но запросы replay для workbox-background-sync.dev.js, которые вызываются при попытке синхронизации, похоже, ничего не находят дляпереигровка.

Во время синхронизации в indexedDB создается

workbox-background-sync - http://localhost:8081

, но имя очереди при запросах кажется пустым:

enter image description here

Чего мне не хватает?Будем благодарны за любые указания или помощь в работе автономной аналитики с Workbox и тестированием PWA.

...