在APICloud開發平臺使用友盟統計功能教程
APICloud開發平臺模組庫中的umAnalytics模組封裝了友盟APP統計SDK。實現了友盟統計功能,包括啟動次數、事件、頁面等app資料的統計。模組的使用步驟主要如下:
1、註冊賬號,開發者到友盟官網註冊自己的賬號
2、進入官網點選移動統計建立應用並獲取AppKey
3、如果需要自定義事件統計,需進入應用,然後點選 設定 => 事件 => 新增事件
4、配置 config.xml 檔案
一個 App 需要同時支援 iOS 和 Android 平臺,則必須單獨申請各自的 appKey,並同時配置在 config 檔案中,Android渠道和iOS渠道分別標註
<feature name="umAnalytics"> // ios_appkey:通過友盟移動統計網站獲得iOS系統的key <param name="ios_appkey" value="*************"/> // iOS渠道號 <param name="ios_channel" value="******"/> // 通過友盟移動統計網站獲得Android系統的key <param name="android_appkey" value="***********"/> // Android的渠道號 <param name="android_channel" value="******"/> </feature>
5、常見問題的索引 https://community.umeng.com/
6、注意
在APICloud開發平臺使用時不能與umengAnalytics、umengTJ模組共同使用,同時由於Google Play 及國內的一些app store審查的原因,自模組版本 1.0.5 後,新增介面 config、onResume、onPause,在原先初始化(init)之前需要呼叫config 介面, 並且需要在監聽到app主頁面啟動後呼叫onResume、onPause介面
引入的程式碼也比較簡單,示例如下:
apiready = function () { var umAnalytics = api.require('umAnalytics'); if (systemType == 'android') { umAnalytics.config(); } umAnalytics.init(); api.addEventListener({ name: 'resume' }, function (ret, err) { umAnalytics.onResume(); }); api.addEventListener({ name: 'pause' }, function (ret, err) { umAnalytics.onPause(); }); }
引入後編譯正式包,客戶下載安裝,在友盟後臺就可以統計到使用者的相關資訊
此外,友盟模組支援自定義事件,需要提前在統計平臺上定義事件;自定義事件可以實現在應用程式中埋點來統計使用者的點選行為。自定義事件目前包括“計數事件”和“計算事件”。使用自定義事件功能請先登陸友盟+官網,在“統計分析->設定->事件”(子賬戶由於許可權限制可能無法看到“設定”選項,請聯絡主帳號開通許可權。)頁面中新增相應的事件id,然後伺服器才會對相應的事件請求進行處理。
// 使用計數事件需要在後臺新增事件時選擇“計數事件”。例:統計微博轉發次數 // 計數事件1:統計發生次數(只有 eventId 一個引數時) var umAnalytics = api.require('umAnalytics'); umAnalytics.onEvent({ eventId: 'Forward', },function(ret, err){ if(ret.status){ alert(JSON.stringify(ret)); }else{ alert(JSON.stringify(err)); } }); // 計數事件2:統計點選行為各屬性被觸發的次數(有 eventId、attributes 兩個引數時) // 例:統計購買商品型別為book,數量為3本 var umAnalytics = api.require('umAnalytics'); umAnalytics.onEvent({ eventId: 'purchase', attributes: { type: 'book', quantity: '3' } },function(ret, err){ if(ret.status){ alert(JSON.stringify(ret)); }else{ alert(JSON.stringify(err)); } }); // 計算事件:使用計算事件需要在後臺新增事件時選擇“計算事件”(字串型);統計數值型變數的值的分佈(有 eventId、attributes、 counter 三個引數時) //示例:購買《Swift Fundamentals》這本書,花了110元 var umAnalytics = api.require('umAnalytics'); umAnalytics.onEvent({ eventId: 'pay', attributes: { book: '《Swift Fundamentals》' }, counter: 110, },function(ret, err){ if(ret.status){ alert(JSON.stringify(ret)); }else{ alert(JSON.stringify(err)); } });
自定義頁面需要呼叫onPageStart 和 onPageEnd 方法,而且必須成對使用,其中onPageStart方法不會隨頁面開啟自動呼叫,一定要在頁面的初始化中寫入。onPageEnd方法不會隨頁面關閉自動呼叫,需要寫在關閉頁面的api.closeWin()或api.closeFrame()方法前有效。
具體示例程式碼如下:
var umAnalytics = api.require('umAnalytics');
umAnalytics.onPageStart({
pageName: '頁面名稱',
}, function(ret, err) {
if (ret) {
alert(JSON.stringify(ret));
} else {
alert(JSON.stringify(err));
}
});
var umAnalytics = api.require('umAnalytics');
umAnalytics.onPageEnd({
pageName: '頁面名稱',
}, function(ret, err) {
if (ret) {
alert(JSON.stringify(ret));
} else {
alert(JSON.stringify(err));
}
});
友盟在統計使用者時以裝置為主,如果需要統計應用自身的賬號,可以使用登入介面profileSignInWithPUID和退出profileSignOff介面,程式碼如下:
var umAnalytics = api.require('umAnalytics');
umAnalytics.profileSignInWithPUID({
userID:'000593',
provider:"大通燃氣"
},function(ret,err){
if(ret){
alert(JSON.stringify(ret));
}else{
alert(JSON.stringify(err));
}
});
var umAnalytics = api.require('umAnalytics');
umAnalytics.profileSignOff(function(ret){
if(ret){
alert(JSON.stringify(ret));
}
});
更多方法和細節請參考,模組文件https://docs.apicloud.com/Client-API/Open-SDK/umAnalytics