[英]Google Analytics API v4 for Android Does NOT Send Screen Views
我為google analytics api v4設置了所有內容,如下所述:
https://developers.google.com/analytics/devguides/collection/android/v4/
在這里: http : //www.javacodegeeks.com/2014/04/working-with-google-analytics-api-v4-for-android.html
我可以看到實時數據,但我無法在特定時間段內看到屏幕,活動用戶,新用戶和頂級設備模型 ,例如“所有時間”。
Analytic不發送屏幕視圖。
這是我的global_tracker.xml
<string name="ga_trackingId">UA-XXXXXXXX-Y</string>
<integer name="ga_sessionTimeout">300</integer>
<bool name="ga_autoActivityTracking">true</bool>
<bool name="ga_reportUncaughtExceptions">true</bool>
<screenName name="com.org.ScreenActivity1">Screen 1</screenName>
<screenName name="com.org.ScreenActivity2">Screen 2</screenName>
這是我的AndroidManifest.xml
<meta-data
android:name="com.google.android.gms.version"
android:value="@integer/google_play_services_version"/>
<meta-data
android:name="com.google.android.gms.analytics.globalConfigResource"
android:resource="@xml/global_tracker"/>
這是我的Analytics.java
public enum TrackerName {
APP_TRACKER, // Tracker used only in this app.
GLOBAL_TRACKER // Tracker used by all the apps from a company. eg: roll-up tracking.
}
HashMap<TrackerName, Tracker> mTrackers = new HashMap<TrackerName, Tracker>();
public Analytics() {
super();
}
public synchronized Tracker getTracker(TrackerName trackerId) {
if (!mTrackers.containsKey(trackerId)) {
GoogleAnalytics analytics = GoogleAnalytics.getInstance(this);
if (trackerId == TrackerName.GLOBAL_TRACKER) {
mTrackers.put(trackerId, analytics.newTracker(R.xml.global_tracker));
}
}
return mTrackers.get(trackerId);
}
這是我的Activity類 :
protected void onCreate(Bundle bundle){
//......................
Tracker tracker = ((Analytics) getApplication()).getTracker(Analytics.TrackerName.GLOBAL_TRACKER);
tracker.setScreenName("Main Activity");
tracker.send(new HitBuilders.AppViewBuilder().build());
//......................
}
@Override
protected void onStart() {
super.onStart();
GoogleAnalytics.getInstance(this).reportActivityStart(this);
}
@Override
protected void onStop() {
super.onStop();
GoogleAnalytics.getInstance(this).reportActivityStop(this);
}
根據@stkent回答的問題是, AppViewBuilder()
已被棄用,因此您可以用delete一個這行代碼,這就是你需要在你的情況下,為了幫助有同樣問題的人以下后解決您的問題, 這個刪除此行代碼
tracker.send(new HitBuilders.AppViewBuilder().build());
並添加此項
@Override
protected void onStart() {
super.onStart();
GoogleAnalytics.getInstance(this).reportActivityStart(this);
}
@Override
protected void onStop() {
super.onStop();
GoogleAnalytics.getInstance(this).reportActivityStop(this);
}
在您要跟蹤的每個活動中
關於這兩種方法的谷歌文檔的其他信息
reportActivityStop
reportActivityStart
使用這個與自動跟蹤是一個noop所以你可以禁用它
這個帖子的原始答案是@skent
我失去了一天。 從文檔到互聯網代碼嘗試各種各樣,沒有任何事情可以顯示我的整體屏幕視圖。 最后,今天午夜過后,他們出現了。
我想,如果Google實時數據(以onCreate或類似方式發送Tracker)對您有用,那么只需等待一天,該數據將在Google服務器上的某個位置進行處理,並在分析儀表板上完成一段時間后就緒。
PS。 不聽托尼,他的問題與此不一樣。 但是stkent對問題有一些很好的見解, 谷歌分析沒有在實時概述中顯示活躍用戶
加入
<application
android:name="mypackagename.MyApplication"
... >
在清單文件中,訣竅。
@tony是對的,不推薦使用HitBuilders.AppViewBuilder
類,但如果你不想這樣做,則無需實現onStart/Stop
方法。 正如GA的V4教程 (第4節)所述,您可以通過HitBuilders.ScreenViewBuilder()
替換AppViewBuilder類,您將在所有平台上獲得所需的結果。
請在此處查看有關課程參考API的更多詳細信息: https : //developer.android.com/reference/com/google/android/gms/analytics/HitBuilders.ScreenViewBuilder.html
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.