Проблема перехода с GA на GTAG в веб-приложении ionic / cordova - PullRequest
0 голосов
/ 18 октября 2019

Описание

Поскольку старый GA SDK устарел, мы переходим на GTAG. Во время миграции я обнаружил следующую строку:

ga('set', 'checkProtocolTask', null);

, которая отключает проверку протокола, чтобы скрипт GA работал в веб-просмотре (где, по-видимому, cordova использует протокол file://)

What I 'я попробовал

Я просмотрел интернет (около 2-3 страниц "похожих, но не совсем одинаковых" проблем)

Единственное решение, которое я нашел, есть: https://support.google.com/analytics/answer/7475953?hl=uk TLDR: добавьте скрипт в Google Tag Manager, который отключит проверку протокола для всех трекеров в Google Analytics и будет использовать этот скрипт в настройках Google Analytics.

Но: * мы не используем Google Tag Manager на данный момент,так что нам нужно было бы это настроить только для этого. * это кажется мне грязным хаком ... Но я думаю, это не лучше старой версии ... * Я не думаю, что хорошо иметь этот кусок кода в Tag Manager, когда все остальное в репозитории GIT,* Это означает, что мы отключаем проверку протокола, где бы он ни вызывался. В то время как «взлом» мы отключили только проверку протокола при создании мобильного приложения (настольная сеть работала без этой линии)

Нет ли других решений? я не прав?

1 Ответ

0 голосов
/ 21 октября 2019

Итак ... Я только что понял, что использование глобального тега сайта просто использует ga, как мы привыкли. Таким образом, я фактически использовал решение со страницы, которую нашел: https://support.google.com/analytics/answer/7475953?hl=uk

Только я использовал этот фрагмент кода на своей странице, а не в переменной GTM. Поэтому всякий раз, когда я загружаю свою страницу, я

ga(function() {
    var trackers = $window.ga.getAll();
    trackers.forEach(function(tracker) {
    tracker.set('checkProtocolTask', null);
    });
});

оборачиваю фрагмент в function() {...}, таким образом, он, очевидно, запускается после инициализации ga.

...