2015/01/11

Google Analytics SDK v4

最近將 Google Analytics 升級到 v4,碰到了一些改動及需要注意的地方。首先是 GA 已經內建在 Google Play Services SDK 中,我們只需要使用 Gradle 來 import 即可,原本在官網下載的 libGoogleAnalyticsServices.jar 就可以移除了。

在 GA v4 中,Google 依功能目的建立不同的 Tracker,並且建議統一放在 Application 來做管理。另外在 Application onCreate 時要記得做 Tracker 的初始化,不然會遺漏掉一些資訊,這是官方文件沒有提到的。

由於目前我們只需要收集自己 app 的數據,所以選擇 APP_TRACKER 來使用就夠了。接下來在 Application 提供一個 method 來讓其他元件取用。

GA v4 還新增了一個特色,就是可以讓 app 收集使用者的年齡、性別及興趣,只要像上述的程式碼一樣,利用 Tracker 呼叫 enableAdvertisingIdCollection 並啟用即可。

再來是原本我們都會在 res/values 底下放 analytics.xml 這個設定檔,現在則是改在 res/xml 底下定義 Tracker 各自的設定檔。如上所述,在這邊我們新增了一個 app_tracker.xml,

與之前的版本明顯不同的地方在於原本要在 report 中定義 screen name 的 tag,從 <string> 變更為 <screenName>。另外由於 Fragment 的生命週期特性,目前仍然不能在此定義它的 screen name,必須在 onStart 時主動傳送 screen view,

而傳送 event 則是改用 EventBuilder 來建立。

這次還多了幾個好用的進階功能,例如我們若想避免在 test 或 debug 時的行為也被 GA 記錄到 report 中,可以使用 dryRun 這個 flag 來設定。

若是想調整 GA 的 log 層級,也可以利用 Logger 來設定,預設是輸出 warning 和 error。

Reference:
https://developers.google.com/analytics/devguides/collection/android/v4/
https://support.google.com/analytics/answer/2799357
http://stackoverflow.com/questions/22821139

沒有留言:

張貼留言