[英]Google Analytics v4 Android HitBuilder
我發現 android 的谷歌分析官方指南 ( https://developers.google.com/analytics/devguides/collection/android/v4/ ) 缺乏全面的例子。 到目前為止,試圖實施它一直令人困惑。
首要問題:
這就是我在 Application 子類中的 getTracker 的樣子
public synchronized Tracker getTracker() {
if (_globalTracker == null) {
GoogleAnalytics analytics = GoogleAnalytics.getInstance(this);
return analytics.newTracker(R.xml.global_tracker);
}
return _globalTracker;
}
但是 eclipse 說“global_tracker 無法解析或不是一個字段”,即使我已經創建了一個名為 global_tracker.xml 的 XML 文件——它在教程中的 res/xml 下
第二個問題:
在我的一項活動中,我嘗試讓跟蹤器發送屏幕視圖,如教程中所述:
// Get tracker.
Tracker t = ((StorageApplication) getApplication()).getTracker();
// Send a screen view.
t.send(new HitBuilders.AppViewBuilder().build());
不幸的是,eclipse 說“HitBuilders 無法解析為類型”,即使我很確定我已經正確導入和引用了谷歌播放服務和分析(我也使用來自谷歌播放服務的地理定位和其他服務,它們都可以工作;分析是正確導入,因為解析 Tracker 沒有問題)。
有人有任何指示嗎? 我真的很感謝你的幫助——一直想知道為什么這如此令人困惑!
如果有人想將 Eclipse 用於他/她的應用程序,解決方案是這樣的:
為了修復它,您必須將這些庫導出到 Eclipse 工作區:
play-services-analytics-impl-9.8.0.arr
和play-services-analytics-9.8.0.arr
使用這個答案
https://stackoverflow.com/a/33117095/1979882
簡而言之,為了避免 DEX 文件中的類(大約 65000 個類)的限制,播放服務庫被分成了幾個庫。 因此,您也必須以相同的方式導出最常見的庫:
play-services-maps-9.8.0
、 play-services-base-9.8.0
、 play-services-basement-9.8.0
、 play-services-ads-lite-9.8.0
對於第一個問題:eclipse 是否也抱怨其他資源 ID? 在 eclipse 中顯示資源 ID 之前,您必須編譯一次應用程序。
對於第二個問題:
如果不是很大,你可以發布完整的課程嗎?
另外,就因為我不得不問,您能否確認您使用的是 sdk 的播放服務版本並包含來自正確庫的類? 您為這些類導入的包是什么?
ps:一旦我有更多信息,我會更新我的答案。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.