Cobub Razor
Cobub Toaster
其它鏈接
該文檔適用于Cobub Razor 0.7版本。
Cobub Razor是一個免費開源的移動應用分析系統。用戶可以自己建立服務收集移動應用的相關數據,分析并生成統計分析報表。該文章介紹了如何將Cobub Razor的iOS的SDK嵌入到iOS移動應用客戶端。
登陸賬號后,到管理后臺注冊應用,填寫ios應用的相關信息。App建立成功后,可獲得該App的Appkey以及最新的開發文檔和SDK文件。
下載SDK壓縮包并將其解壓縮。解壓縮之后,可以看到兩個文件,UMSAgent.h 和 libUMSAgent.a
在項目工程目錄中,選擇Add→Existing files.. 選擇上面解壓縮后的兩個文件。或者直接將兩個文件拖拽至目錄結構中,選擇Copy Items into destination group’s folder(if needed).
在AppDelegate.h中添加,#import “UMSAgent.h”。在AppDelegate.m中的didFinishLaunchingWithOptions函數添加如下函數調用:
[UMSAgent startWithAppKey:@"14aaa92e098df46cb63ed5196e0c331c" ReportPolicy:BATCH ServerURL:@ "YOUR SDK SERVICE URL"]; -(BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *) launchOptions { [UMSAgent startWith]AppKey:@"UMSAgentKey" ReportPolicy:BATCH]; }
其中UMSAgentKey是從網站注冊應用時獲取到的AgentKey。
ServiceURL 為服務器SDK Service接口地址。
其中BATCH模式為系統下次啟動時一次性上傳數據。
如果希望改為實時上傳模式,請將BATCH改為REALTIME
建議采用BATCH模式,減少APP與網絡交互,節約流量,增強用戶體驗。 使用時長統計
平臺將每次APP進入前臺和進入后臺之間的間隔作為一次生命周期過程。平臺會將每次生命周期作為數據提交到后臺,為開發者提供相應的統計分析報告。
自定義的事件用來為開發者提供更為詳細的用戶行為統計分析。使用前請在后臺提前添加指定的事件,并獲得事件的Event_identifier后,后臺才能進行相應的處理工作,否則后臺對客戶端未注冊事件不進行處理。
+(void)postEvent:(NSString *)event_id;
event_id: 當前事件的ID值,在服務端定義的,ID值不能有空格。在您需要發送事件報告的代碼段,調用如下方法就可以向服務器發送事件記錄,將統計event_id對應事件發送次數,變化趨勢,例如廣告點擊,短信發送量等等。
比如,監測應用程序里的廣告的點擊次數,事件ID為”ad_click “。那么需要在程序里每次廣告點擊時調用postEvent:@ “ad_click “通知服務器一個廣告點擊事件發生
+(void)postEvent:(NSString *)event_id label:(NSString *)label;
這是postEvent:(NSString *) event_id一個重載的方法。
除了能夠統計event_id所對應事件的發生次數,變化趨勢外,還能統計事件中具體標簽所占的比例,label為當前標簽,同樣這里的event_id字符串中也不能有空格。例如:在應用程序中省份對應一個event_id,每個城市對應一個label,這樣我們可以在生成的統計分析表中看到不同城市的比例。
+(void)postEvent:(NSString *)event_id acc:(NSInteger)acc;
對于程序中的某些可能被頻繁觸發的事件,開發者可以再程序中維護一個計數器,這樣事件被多次觸發只需要生成一個消息,這個消息包括該事件被觸發的次數。
這里我們重載了兩個接口(累計事件):
+(void)postEvent:(NSString *)event_id acc:(NSInteger)acc; +(void)postEvnet:(NSString *)event_id label:(NSString *)label acc:(NSInteger)acc;
[UMSAgent checkUpdate]; 調用該方法系統會自動檢測是否有更高版本的應用。如果有新的版本會提示用戶更新,如果用戶選擇更新應用,系統會自動為用戶更新應用;不選擇就不更新,
對應不同渠道的每個App, Cobub Razor后臺提供了唯一的key。在為不同的渠道提供更新時,注意更為不同的key。
[IMSAgent setOnLineConfig:false];
在AppDelegate.m中的didFinishLaunchingWithOptions函數添加如下函數調用該API,如果選擇true,用戶在服務器端設置了參數值后,SDK將聯網檢測您的在線配置,并將這些信息保存在本地。如果選擇false, 將不檢測。
+(void)startTracPage:(NSString*)page_name; 在頁面的viewWillAppear()方法調用該方法,該方法會記錄下用戶進入頁面的時間。如下圖:
-(void) viewWillAppear(BOOL)animated { [UMSAgent startTracPage:@"Main"]; } +(void)endTracPage:(NSString*)page_name;
在頁面的viewWillDisappear()方法中調用該方法,該方法會記錄下用戶離開頁面的時間。
如下圖:
-(void) viewWillDisappear:(BOOL)animation { [UMSAgent endTracPage:@"Main"]; }
注:以上兩個方法需要成對調用。
調用該方法可以將用戶的id與app進行綁定。
[UMSAgetnt bindUserIdentifier:@"userid"];
[UMSAgetnt postTag:@"tag"];
用戶可以自定義設置tag信息,并發送至后臺。用作以后的用戶分組(暫未實現)。