友盟統(tǒng)計事件添加

友盟統(tǒng)計

SDK集成

通過在工程build.gradle配置腳本中添加maven線上依賴,導(dǎo)入最新版本組件化基礎(chǔ)庫和統(tǒng)計SDK让虐。 在Gradle依賴中添加:

dependencies {
    compile 'com.umeng.sdk:common:latest.integration'
    compile 'com.umeng.sdk:analytics:latest.integration'
}

如果無法正常集成請?zhí)砑尤缦屡渲茫?/p>

allprojects {
    repositories {
            mavenCentral()     
    }
}

SDK初始化

在項目工程的自定義application中的onCreate方法中添加

注意: 如果項目的Manifest文件中已經(jīng)配置友盟的appkey和channel探颈,則使用該方法初始化考赛。

/**
*參數(shù)1:上下文踱卵,必須的參數(shù),不能為空l
參數(shù)2:設(shè)備類型犹芹,必須參數(shù),傳參數(shù)為UMConfigure.DEVICE_TYPE_PHONE則表示手機鞠绰;傳參數(shù)為UMConfigure.DEVICE_TYPE_BOX則表示盒子腰埂;默認為手機
參數(shù)3:Push推送業(yè)務(wù)的secret,需要集成Push功能時必須傳入Push的secret蜈膨,否則傳空
*/
 UMConfigure.init(this, UMConfigure.DEVICE_TYPE_PHONE, "1fe6a20054bcef865eeb0991ee84525b");

權(quán)限添加

<!-- 必須的權(quán)限 --> 
<uses-permission android:name="android.permission.ACCESS_NETWORK_STATE" /> 
<uses-permission android:name="android.permission.ACCESS_WIFI_STATE" />
 <uses-permission android:name="android.permission.READ_PHONE_STATE" /> 
<uses-permission android:name="android.permission.INTERNET" />
 <!-- 推薦的權(quán)限 --> 
<!-- 添加如下權(quán)限屿笼,以便使用更多的第三方SDK和更精準的統(tǒng)計數(shù)據(jù) --> 
<uses-permission android:name="android.permission.ACCESS_COARSE_LOCATION" />
 <uses-permission android:name="android.permission.ACCESS_FINE_LOCATION" />
 <uses-permission android:name="android.permission.CHANGE_WIFI_STATE" /> 
<uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE" />

AndroidManifest清單配置文件方式初始化appkey和channel

<manifest>
 <application ……>
 …… 
<meta-data android:value="YOUR_APP_KEY" android:name="UMENG_APPKEY"/>
 <meta-data android:value="Channel ID" android:name="UMENG_CHANNEL"/>
 </application>
 </manifest>

常用接口

設(shè)置Log開關(guān)

/**
* 參數(shù): boolean 默認為false,如需查看LOG設(shè)置為true
*/
UMConfigure.setLogEnabled(true);

設(shè)置日志加密

/**
* 參數(shù):boolean 默認為false(不加密)
*/
UMConfigure.setEncryptEnabled(true);

統(tǒng)計

session統(tǒng)計

在每個Activity的onResume方法中調(diào)用 MobclickAgent.onResume(Context),
onPause方法中調(diào)用 MobclickAgent.onPause(Context)

public void onResume() {
     super.onResume();
     MobclickAgent.onResume(this);
 }
 public void onPause() { 
    super.onPause(); 
    MobclickAgent.onPause(this); 
} 
  • 確保在所有的Activity中都調(diào)用 MobclickAgent.onResume() 和onPause()方法翁巍,這兩個調(diào)用將不會阻塞應(yīng)用程序的主線程驴一,也不會影響應(yīng)用程序的性能。
  • 注意如果您的Activity之間有繼承或者控制關(guān)系請不要同時在父和子Activity中重復(fù)添加nPause和nResume方法灶壶,否則會造成重復(fù)統(tǒng)計肝断,導(dǎo)致啟動次數(shù)異常增高。(eg.使用TabHost、TabActivity胸懈、ActivityGroup時)担扑。
  • 當(dāng)應(yīng)用在后臺運行超過30秒(默認)再回到前端,將被認為是兩個獨立的session(啟動)趣钱,例如用戶回到home涌献,或進入其他程序,經(jīng)過一段時間后再返回之前的應(yīng)用首有。
  • 可通過接口:setSessionContinueMillis(long interval) 來自定義這個間隔(參數(shù)單位為毫秒)洁奈。
  • 如果開發(fā)者調(diào)用kill或者exit之類的方法殺死進程,請務(wù)必在此之前調(diào)用onKillProcess(Context context)方法绞灼,用來保存統(tǒng)計數(shù)據(jù)利术。

頁面統(tǒng)計

只由Activity構(gòu)成的應(yīng)用

如果您已經(jīng)完成之前的代碼添加(session統(tǒng)計),那么SDK已默認統(tǒng)計了每個Activity的跳轉(zhuǎn)路徑低矮。頁面統(tǒng)計不需要再添加其他代碼印叁。

包含Activity、Fragment或View的應(yīng)用

手動頁面統(tǒng)計API:一次成對的 onPageStart -> onPageEnd 調(diào)用军掂,對應(yīng)一次手動頁面生命周期統(tǒng)計轮蜕。

    public static void onPageStart(String viewName);
    public static void onPageEnd(String viewName);

MobclickAgent.onResume() 和MobclickAgent.onPause() 方法是用來統(tǒng)計應(yīng)用時長的(也就是Session時長,當(dāng)然還包括一些其他功能)
MobclickAgent.onPageStart()和MobclickAgent.onPageEnd()方法是用來統(tǒng)計頁面跳轉(zhuǎn)的

自定義事件統(tǒng)計(數(shù)據(jù)埋點)

  • event id:自定義事件id。
  • key:自定義事件下的參數(shù)蝗锥。
  • value:自定義事件參數(shù)下的參數(shù)值跃洛。
計數(shù)事件

在您希望跟蹤的代碼部分,調(diào)用如下方法:
public static void onEvent(Context context, String eventID);
public static void onEvent(Context context, String eventID, String label);

  • context 當(dāng)前宿主進程的ApplicationContext上下文终议。
  • eventId 為當(dāng)前統(tǒng)計的事件ID汇竭。
  • label 事件的標簽屬性。
統(tǒng)計點擊行為各屬性被觸發(fā)的次數(shù)

考慮事件在不同屬性上的取值穴张,可以調(diào)用如下方法:
public static void onEvent(Context context, String eventID, Map<String, String> map);

  • context 當(dāng)前宿主進程的ApplicationContext上下文细燎。
  • eventID 為當(dāng)前統(tǒng)計的事件ID。
  • map 為當(dāng)前事件的屬性和取值(Key-Value鍵值對)皂甘。
    比如:統(tǒng)計電商應(yīng)用中”購買”事件發(fā)生的次數(shù)玻驻,以及購買的商品類型及數(shù)量,那么在購買的函數(shù)里調(diào)用:
    HashMap<String,String> map = new HashMap<String,String>();
    map.put("type","book");
    map.put("quantity","3"); 
    MobclickAgent.onEvent(mContext, "purchase", map);

事件統(tǒng)計封裝工具類

public class EventStatisticsUtil {


    /**
     * 統(tǒng)計觸發(fā)事件的ID和參數(shù)
     * @param mContext
     * @param eventId
     * @param params
     */
    public static void onEvent(Context mContext, String eventId, Map<String, String> params) {
        MobclickAgent.onEvent(mContext, eventId, params);
    }

    /**
     * 只統(tǒng)計事件觸發(fā)ID
     * @param mContext
     * @param eventId
     */
    public static void onEvent(Context mContext, String eventId) {
        MobclickAgent.onEvent(mContext, eventId);
    }
}
最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
  • 序言:七十年代末偿枕,一起剝皮案震驚了整個濱河市璧瞬,隨后出現(xiàn)的幾起案子,更是在濱河造成了極大的恐慌渐夸,老刑警劉巖嗤锉,帶你破解...
    沈念sama閱讀 219,188評論 6 508
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件,死亡現(xiàn)場離奇詭異捺萌,居然都是意外死亡档冬,警方通過查閱死者的電腦和手機膘茎,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 93,464評論 3 395
  • 文/潘曉璐 我一進店門,熙熙樓的掌柜王于貴愁眉苦臉地迎上來酷誓,“玉大人披坏,你說我怎么就攤上這事⊙问” “怎么了棒拂?”我有些...
    開封第一講書人閱讀 165,562評論 0 356
  • 文/不壞的土叔 我叫張陵,是天一觀的道長玫氢。 經(jīng)常有香客問我帚屉,道長,這世上最難降的妖魔是什么漾峡? 我笑而不...
    開封第一講書人閱讀 58,893評論 1 295
  • 正文 為了忘掉前任攻旦,我火速辦了婚禮,結(jié)果婚禮上生逸,老公的妹妹穿的比我還像新娘牢屋。我一直安慰自己,他們只是感情好槽袄,可當(dāng)我...
    茶點故事閱讀 67,917評論 6 392
  • 文/花漫 我一把揭開白布烙无。 她就那樣靜靜地躺著,像睡著了一般遍尺。 火紅的嫁衣襯著肌膚如雪截酷。 梳的紋絲不亂的頭發(fā)上,一...
    開封第一講書人閱讀 51,708評論 1 305
  • 那天乾戏,我揣著相機與錄音迂苛,去河邊找鬼。 笑死歧蕉,一個胖子當(dāng)著我的面吹牛灾部,可吹牛的內(nèi)容都是我干的康铭。 我是一名探鬼主播惯退,決...
    沈念sama閱讀 40,430評論 3 420
  • 文/蒼蘭香墨 我猛地睜開眼,長吁一口氣:“原來是場噩夢啊……” “哼从藤!你這毒婦竟也來了催跪?” 一聲冷哼從身側(cè)響起,我...
    開封第一講書人閱讀 39,342評論 0 276
  • 序言:老撾萬榮一對情侶失蹤夷野,失蹤者是張志新(化名)和其女友劉穎懊蒸,沒想到半個月后,有當(dāng)?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體悯搔,經(jīng)...
    沈念sama閱讀 45,801評論 1 317
  • 正文 獨居荒郊野嶺守林人離奇死亡骑丸,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點故事閱讀 37,976評論 3 337
  • 正文 我和宋清朗相戀三年,在試婚紗的時候發(fā)現(xiàn)自己被綠了。 大學(xué)時的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片通危。...
    茶點故事閱讀 40,115評論 1 351
  • 序言:一個原本活蹦亂跳的男人離奇死亡铸豁,死狀恐怖,靈堂內(nèi)的尸體忽然破棺而出菊碟,到底是詐尸還是另有隱情节芥,我是刑警寧澤,帶...
    沈念sama閱讀 35,804評論 5 346
  • 正文 年R本政府宣布逆害,位于F島的核電站头镊,受9級特大地震影響,放射性物質(zhì)發(fā)生泄漏魄幕。R本人自食惡果不足惜相艇,卻給世界環(huán)境...
    茶點故事閱讀 41,458評論 3 331
  • 文/蒙蒙 一、第九天 我趴在偏房一處隱蔽的房頂上張望纯陨。 院中可真熱鬧厂捞,春花似錦、人聲如沸队丝。這莊子的主人今日做“春日...
    開封第一講書人閱讀 32,008評論 0 22
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽机久。三九已至臭墨,卻和暖如春,著一層夾襖步出監(jiān)牢的瞬間膘盖,已是汗流浹背胧弛。 一陣腳步聲響...
    開封第一講書人閱讀 33,135評論 1 272
  • 我被黑心中介騙來泰國打工, 沒想到剛下飛機就差點兒被人妖公主榨干…… 1. 我叫王不留侠畔,地道東北人结缚。 一個月前我還...
    沈念sama閱讀 48,365評論 3 373
  • 正文 我出身青樓,卻偏偏與公主長得像软棺,于是被迫代替她去往敵國和親红竭。 傳聞我的和親對象是個殘疾皇子,可洞房花燭夜當(dāng)晚...
    茶點故事閱讀 45,055評論 2 355

推薦閱讀更多精彩內(nèi)容

  • 時間:2016年5月10日21:28:50作者:JustDo23版本:友盟SDK v5.6.7 (2016-3-2...
    JustDo23閱讀 15,933評論 14 32
  • 盤古梁:多舉措致力井筒綜合治理2019/2/6 0:28 頁面內(nèi)容?井筒管理是原油穩(wěn)產(chǎn)上產(chǎn)的重要環(huán)節(jié)喘落,是降影響茵宪、提...
    包包_1e54閱讀 208評論 0 0
  • 拯救月光族:存錢的必要性以及具體操作方案草稿2019.02.16 以下文字超過2760字,全文閱讀需要6分鐘左右瘦棋。...
    阿硯印象閱讀 888評論 0 6
  • 昨晚和木頭哥哥聊天稀火,聊到家庭個人情感問題很是郁悶,令我深思赌朋。 一次懵懂凰狞、一次刻骨篇裁、一次...
    依遜河畔閱讀 390評論 3 21
  • 看電影的時候,常常發(fā)現(xiàn)他們使用了相當(dāng)戲劇化的光線赡若,雖然有那么一點不合邏輯茴恰,但往往卻能因此產(chǎn)生很有戲劇性的效果,非常...
    夏彌生閱讀 937評論 0 4