2016-07-22 89 views
15

我不想將任何特殊日誌發送到Firebase Analytics控制檯,只需檢查哪些屏幕是用戶花費更多時間等等。是否有必要在每個活動中初始化Firebase Analytics?

當我用AnalyticsTracker它是強制性的到處添加它,那麼你可以設置與Tracker.xml文件中的每個畫面的具體名稱。

官方文件說:

的火力地堡Analytics(分析)添加的依賴於你的應用程序級build.gradle文件:

compile 'com.google.firebase:firebase-core:9.2.1'

聲明FirebaseAnalytics在你活動的頂層對象:

private FirebaseAnalytics mFirebaseAnalytics;

然後初始化在onCreate()方法:

mFirebaseAnalytics = FirebaseAnalytics.getInstance(this);

所以我想從來就來在我想要得到的數據的每一頁做到這一點,我haven't?

回答

2

擴展了屏幕的報告,你不要需要,因爲這是爲您自動完成調用FirebaseAnalytics.setCurrentScreen()在每一個活動。該official docs狀態:

注意屏幕的報告將自動啓用並記錄你當前活動的 類的名稱,而不需要您 調用這個函數。

據推測,這個工作,你需要調用FirebaseAnalytics.getInstance()在您的應用程序子類onCreate()方法。

11

號你只需要在一個延伸應用類



    public class MyApplication extends Application { 
    public static FirebaseAnalytics mFirebaseAnalytics; 
    @Override 
     public void onCreate() { 
      super.onCreate(); 
      mFirebaseAnalytics = FirebaseAnalytics.getInstance(this); 
    } 
    } 

後的類來創建全局變量,添加下面一行在你的清單中的應用程序標籤

<application 
    android:name=".MyApplication" 
    ... 
+2

那麼爲什麼史蒂夫Ganem說,它不支持? –

+1

@ H.S.H並不是說支持Page/ScreenViews。他只回答了是否需要在每個活動中初始化的問題。答案是否定的,你可以在Application類中實例化它。 – RenatoIvancic

+0

你好,我是Android noob,並且對這裏發生的事情着迷。 我認爲真正的魔法發生過一次'「.MyApplication」'被添加到清單中。你能請一下,解釋一下這裏發生了什麼? – Anuj

4

自動屏幕跟蹤尚未在Firebase Analytics中受支持,但這是我們現在正在認真考慮的事項。

7

屏幕跟蹤,現在可以只用一行

**Your ApplicationClass** 
    public FirebaseAnalytics mFirebaseAnalytics; 
    @Override 
     public void onCreate() { 
    mFirebaseAnalytics = FirebaseAnalytics.getInstance(this); 
    } 

    public FirebaseAnalytics getmFirebaseAnalytics() { 
      return mFirebaseAnalytics; 
     } 

做到了創建基本活動,並從這裏調用FirebaseAnalytics吸氣後。然後使用.setCurrentScreen如下

**Your BaseActivity** 
    @Override 
     protected void onResume() { 

      FirebaseAnalytics firebaseAnalytics = ((ApplicationClass) getApplication()).getmFirebaseAnalytics(); 
      firebaseAnalytics.setCurrentScreen(this, getClass().getSimpleName(), null); 
      Log.d("FAnalytics", "setCurrentScreen: " + getClass().getSimpleName()); 
      super.onResume(); 
     } 

不要忘了!您的所有活動必須從BaseActivity https://firebase.google.com/docs/analytics/screenviews