Android友盟整合
友盟整合
按照開發手冊:註冊 獲取APPKey 匯入包
配置許可權 Appkey
在Application類中:
1 初始化介面 .init
UMConfigure.init(this, UMConfigure.DEVICE_TYPE_PHONE, "");
若在manifest中配置了 appkey 和channel 並且不要 push功能 則這樣
第一個為 context
第二個為 裝置型別如手機則填寫上面那個
盒子則為 UMConfigure.DEVICE_TYPE_BOX
最後一個為 push的key
2 場景型別設定介面:
MobclickAgent.setScenarioType(Context context, EScenarioType etype)
etype是官方場景,有如下場景:
EScenarioType.E_UM_NORMAL 普通統計場景型別
EScenarioType.E_UM_GAME 遊戲場景型別
3 設定Secret Key,防止appkey被盜用,secretkey網站申請(可選)
4 Session統計
在每個Activity的onResume方法中呼叫
MobclickAgent.onResume(Context)
onPause方法中呼叫
MobclickAgent.onPause(Context)
用於 啟動次數的統計原理, 單次使用時長的統計原理
@Override
public void onResume() {
super.onResume();
MobclickAgent.onResume(this);
}
@Override
public void onPause() {
super.onPause();
MobclickAgent.onPause(this);
}
5.1 賬號的統計 這裡設定在登入正確回傳時
//當用戶使用自有賬號登入時,可以這樣統計:
MobclickAgent.onProfileSignIn(userID); // 如UUID
//當用戶使用第三方賬號(如新浪微博)登入時,可以這樣統計:
MobclickAgent.onProfileSignIn("WB",userID);
賬號登出時需呼叫此介面,呼叫之後不再發送賬號相關內容
public static void onProfileSignOff();
這裡可以在點選退出登入時設定
5.2 整合賬號統計功能後,請到我的產品-設定-應用資訊,選擇啟動使用賬號統計報表
6 傳送策略: 官網上設定
啟動時傳送:新增、活躍、啟動次數等資料在APP本次開啟時即刻傳送,使用時長、自定義事件、錯誤統計等在使用過程中產生的所有訊息資料都在下次啟動應用時傳送。
按間隔傳送:按特定間隔傳送資料,間隔時長介於90秒與1天之間。新增、活躍、啟動次數等資料在APP本次開啟時即刻傳送,使用時長、自定義事件、錯誤統計等在使用過程中產生的所有資料都按間隔傳送
7 日誌加密設定
在Application中設定
//設定是否對日誌資訊進行加密, 預設false(不加密).
UMConfigure.setEncryptEnabled (boolean enable);
8 程式碼混淆
-keepclassmembers class * {
public <init> (org.json.JSONObject);
}
-keep public class [您的應用包名].R$*{
public static final int *;
}
-keepclassmembers enum * {
public static **[] values();
public static ** valueOf(java.lang.String);
}
9 統計點選行為各屬性被觸發的次數
見官網SDK
10 錯誤統計
SDK通過Thread.UncaughtExceptionHandler 捕獲程式崩潰日誌,並在程式下次啟動時傳送到伺服器。 如不需要錯誤統計功能,可通過此方法關閉
MobclickAgent.setCatchUncaughtExceptions(false);
如果開發者自己捕獲了錯誤,需要上傳到【友盟+】伺服器可以呼叫下面方法:
public static void reportError(Context context, String error)
或
public static void reportError(Context context, Throwable e)
11 使用整合測試服務
Application類中
// 整合測試
UMConfigure.setLogEnabled(true);
然後下載那個友盟統計軟體掃碼 或者程式碼整合
去連線測試裝置
並且 去官網應用統計中檢視相關資料
可能會有幾分鐘的延遲