iOS 輕鬆使用 App 資料統計

pikacode發表於2019-03-03
  • 想獲取使用者各項行為資料嗎?
  • 想輕鬆檢視使用者行為圖表嗎?
  • 想高效進行 App 運營管理嗎?

想,來我帶你玩轉 App 資料統計。這裡我使用專業、輕便的 JAnalytics
本文內容分為兩部分:程式碼示例&使用技巧部分、控制檯圖表檢視部分。

程式碼示例&使用技巧


整合

  1. 下載 JAnalytics SDK
  2. 新增 Lib 資料夾下的全部檔案至 Xcode Project
  3. 增加相關的 framework 依賴:
    UIKit.framework
    SystemConfiguration.framework
    CoreTelephony.framework
    CoreGraphics.framework
    Security.framework
    Foundation.framework
    CoreLocation.framework
    CoreFoundation.framework
    CFNetwork.framework
    libz.tbd
    libresolv.tbd

初始化 SDK

#import "JANALYTICSService.h"複製程式碼

application:didFinishLaunchingWithOptions 中新增以下程式碼:

程式碼示例
JANALYTICSLaunchConfig * config = [[JANALYTICSLaunchConfig alloc] init];
config.appKey = @"your appkey";
config.channel = @"channel";     
[JANALYTICSService setupWithConfig:config];複製程式碼

其中的 appKey 引數,需要你在極光控制檯註冊個帳號,並建立一個 App 專案來獲取。

頁面流統計

  • +startLogPageView:開始統計某頁面,可以寫在 ViewControler 的 viewDidAppear:
  • +stopLogPageView:結束統計某頁面,可以寫在 ViewControler 的 viewDidDisappear:
程式碼示例
- (void)viewDidAppear:(BOOL)animated {
  [JANALYTICSService startLogPageView:@"頁面名稱"];
}
- (void)viewDidDisappear:(BOOL)animated {
  [JANALYTICSService stopLogPageView:@"頁面名稱"];
}複製程式碼
使用技巧

以上方法需要在所有 Controller 中全部寫一遍,建議在自己的 UIViewController 基類 BaseViewController 或者為 UIViewController 新增 Category,新增以下程式碼。只要寫一遍即可統計所有現有或者新增的頁面,既減少了程式碼量,也不用擔心有遺漏的頁面:

- (void)viewDidAppear:(BOOL)animated {
  [JANALYTICSService startLogPageView:NSStringFromClass([self class])];
}
- (void)viewDidDisappear:(BOOL)animated {
  [JANALYTICSService stopLogPageView:NSStringFromClass([self class])];
}複製程式碼

在以上程式碼的基礎上還可單獨定義一個類似 PageNameFromClass 的方法,通過獲取 class 轉為具體的頁面名稱

地理位置統計

+setLatitude:longitude::上報地理位置資訊

程式碼示例
[JANALYTICSService setLatitude:116.46 longitude:39.92];複製程式碼

崩潰日誌統計

+crashLogON:開啟對 crash日誌的收集
建議在 application:didFinishLaunchingWithOptions 呼叫該方法。

程式碼示例
[JANALYTICSService setLatitude:116.46 longitude:39.92];複製程式碼

事件統計

+eventRecord通過傳入不同的事件模型來進行各種事件的統計,現支援的事件有:註冊、登入、購買、瀏覽、計數、計算。

程式碼示例
[JANALYTICSService eventRecord:event];複製程式碼

其中的 event 需要根據事件的不同進行建立。
例如註冊事件:

JANALYTICSRegisterEvent * event = [[JANALYTICSRegisterEvent alloc] init];
event.success = YES;//是否註冊成功
event.method = @"註冊方法"; 
event.extra = @{@"自定義 key1":@"自定義 value1"};
[JANALYTICSService eventRecord:event];複製程式碼

各種不同事件的建立方法參照此處

控制檯圖表檢視


控制檯統計頁面可以檢視到 App 中各項資料的統計圖表。

iOS 輕鬆使用 App 資料統計
  • 免費功能:包括推送統計、使用者統計、參與留存、錯誤分析、事件統計、頁面統計等,也足以滿足各項統計需求了。
  • VIP 功能:包括 終端統計、排行統計、使用者畫像等高階功能。

其中的各項資料一般會在 App 呼叫相應介面之後每隔 1 小時進行重新整理。
另外每項統計下面又包含多種不同功能,大家可以依次嘗試一下。

相關文章