Интеграция Google Analytics в приложение Ionic WooCommerce - PullRequest
0 голосов
/ 31 января 2019

Я хочу интегрировать Google Analytics в мое приложение Ionic / WooCommerce, поэтому я добавил плагин Google Analytics:

cordova plugin add https://github.com/danwilson/google-analytics-plugin.git
ionic cordova plugin add cordova-plugin-google-analytics
npm install --save @ionic-native/google-analytics

Я видел эти коды на ионной платформе, поэтому я добавил их в app.component.ts:

import { GoogleAnalytics } from '@ionic-native/google-analytics';

constructor(private ga: GoogleAnalytics) { }

...

this.ga.startTrackerWithId('YOUR_TRACKER_ID')
.then(() => {

     alert('Google analytics is ready now');

      this.ga.trackView('test');

     // Tracker is ready

     // You can now track pages or set additional information such as AppVersion or UserId

   })

   .catch(e => console.log('Error starting GoogleAnalytics', e));

Я добавил идентификатор трекера ...

После запуска этого в браузере консоль записывает, что я получил, было GoogleAnalytics.startTrackerWithId, но Cordova недоступна.Убедитесь, что вы включили cordova.js или запустили device/simulator:

cordovaWarn @ util.js:66
app.component.ts:155 Error starting GoogleAnalytics cordova_not_available).

Поэтому я создал Apk, протестированный на устройстве, после чего был запущен консольный журнал (Google Analytics уже готова).Я проверил панель аналитики, показывающую 0 пользователей, 0 устройств.

Любая помощь по этому вопросу приветствуется.

1 Ответ

0 голосов
/ 31 января 2019

Это потому, что в браузере вы не находитесь в кордовом контексте.Вам нужно поместить этот код в событие готовности платформы следующим образом:

constructor(platform: Platform, private ga: GoogleAnalytics) {
   ///
   platform.ready().then(() => {
      this.ga.startTrackerWithId('YOUR_TRACKER_ID')
      .then(() => {
         alert('Google analytics is ready now');
         this.ga.trackView('test');
         // Tracker is ready
        // You can now track pages or set additional information such as AppVersion or UserId

      })
      .catch(e => console.log('Error starting GoogleAnalytics', e));

   });
   ///
}

Это означает, что это будет выполняться только тогда, когда вы находитесь в контексте устройства.

Однако вы можете реализоватьGA в Интернете, поместив сценарии GA в ваш index.html, импортируйте наборы для GA, и он должен работать на всех платформах и средах

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...