百度移動統計iOS版V3.3服務評測

評測環境

3G/WIFI網絡下:

測試環境

Mac OS X 10.9.4 + Xcode 5.1.1

測試對象

百度移動統計(iOS版)

測試手機

iPhone 5s

系統版本

iOS 7.1.2

手機網絡

3G/WIFI

測試內容

百度移動統計

測試版本

Baidu_Mtj_iOS_SDK_V3.3

測試時間

2014-9-15 17:00 -2014-9-22 9:50


基本參數:

如何收費

免費

支持平臺

iOS,Android

Log數據包

1k

集成SDK後多久可看到數據

60分鐘

對APP體積增加大小

180k左右

用戶量

每天處理會話請求超過10億次

耗流量

自定義事件上限

暫無

單個事件參數上限

暫無

穩定性

很穩定

參數值上限

暫無

及時性

及時

無網絡環境

支持

精準度

精準

對應用運行的影響

集成過程

客戶端集成

1.在百度統計開發平臺創建項目

項目創建地址: http://mtj.baidu.com/

點擊 “新增應用”,創建我們的項目

創建項目

創建名爲“DevStore服務評測Demo”的應用

創建名爲“DevStore服務評測Demo”的應用

創建成功,保存下appkey,集成SDK後續過程會用到

創建成功,保存下appkey

至此,我們的項目在開發平臺創建完成。下載我們需要集成的SDK,SDK下載地址: http://mtj.baidu.com/web/welcome/sdk

下載sdk

2.集成SDK

創建工程項目

創建工程項目

項目創建完成

項目創建完成

引用配置SDK

SDK下載解壓如下,當前最新版本爲V3.3

引用配置SDK

注:iOS_manual.pdf爲百度統計SDK的接入指南文檔

Products-armv7-armv7s文件夾是包含的有armv7 & armv7s架構以及模擬器 i386的SDK,示例Demo,Api 文檔

Products-Support-arm64 文件夾是包含的有 arm64 & armv7 & armv7s 架構以及模擬器i386 的SDK,示例Demo,Api 文檔

爲了平臺適應的兼容性我們這裏採用Products-Support-arm64文件夾中提供的SDK,如下:

SDK資源

iOS API

注:iOS-api   提供相應架構的SDK

    iOS-demo 示例Demo

    iOS-doc   api文檔

打開iOS-api文件夾,依次爲真機使用的SDK,模擬器使用SDK,TouchJSON類庫,通用的SDK。

可以根據不同的應用場景選用SDK,我這裏的服務評測Demo,使用的通用SDK。

集成入項目,如下圖SDK文件夾中:

SDK文件夾

注:引用百度統計SDK的時候需要同時加入TouchJSON類庫,TouchJSON不支持ARC,這裏需要做下處理下,ARC項目集成非ARC類庫需要加入-fno-objc-arc如下(同樣如果是非ARC項目引用ARC類庫需要加入-fobjc-arc)。

加入TouchJSON類庫

加入依賴類庫

加入依賴類庫

注:AdSupport.framework要設置可選,同樣如無用到廣告服務爲了上架審覈通過,可以移除此項,後續代碼集成部分中有涉及到.

OK,編譯正常,下面開始我們的代碼集成部分。

3.代碼實現

在項目AppDelegate.m文件中裏面加入

?
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
#import "AppDelegate.h"
#import "BaiduMobStat.h"
#import <AdSupport/AdSupport.h> //根據需要添加
#define APP_VERSION  [[NSBundle mainBundle]                                                                                                                                                     infoDictionary][@"CFBundleShortVersionString"]
@implementation AppDelegate
  
- (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions
{
  
    BaiduMobStat *statTracker=[BaiduMobStat defaultStat];//獲取統計對象的實例
    statTracker.enableDebugOn=YES;//測試環境建議開啓,發佈環境,爲減少IO消耗應當設NO
    statTracker.logStrategy=BaiduMobStatLogStrategyCustom;//發送策略,自定義模式
    statTracker.sessionResumeInterval = 10;//Session失效時間[0~600s],默認30s,意味着30s發送一次日誌
    statTracker.logSendInterval=1;// 設置日誌發送時間間隔[1~24h]
    //statTracker.channelId=@"" 在管理後臺添加渠道ID,默認appstore
    statTracker.logSendWifiOnly=NO;//只在WIFI下發送統計,這裏爲了統計的完整性建議設NO
    statTracker.shortAppVersion=APP_VERSION;//便於統計這裏設置版本號
    [statTracker startWithAppId:@"1c4f7a954c"];//做管理後臺創建的app Id
     
     
    /*
      NSString *adId=@"";
      if ([[[UIDevice currentDevice] systemVersion] floatValue]>=6.0) {
       adId=[[[ASIdentifierManager sharedManager] advertisingIdentifier]  UUIDString];
        }
      statTracker.adid=adId;
      如沒有用到廣告服務adid這個參數可以不設置,設置可以提高統計精度。
      如果沒有本身項目未用到廣告服務設置此字段可能導致審覈被拒
     */
     
  
    return YES;
}

主要功能

百度移動統計是百度推出的基於移動APP統計的分析工具,主要有用戶分析統計,頁面訪問統計,應用內事件統計,渠道版本統計,錯誤分析等功能。

功能特色

主要功能的實現

主要功能的實現

用戶趨勢分析

用戶趨勢分析

用戶活躍統計

用戶活躍統計

留存用戶統計

留存用戶統計

訪問頁面統計

訪問頁面統計

訪問路徑統計

訪問路徑統計

實時抽樣分析

實時抽樣分析

用戶屬性分析

用戶屬性分析

地域分佈分析

地域分佈分析

終端分析

終端分析

渠道分佈分析

渠道分佈分析

版本分佈統計

版本分佈統計

事件分析

事件分析

錯誤報告分析

錯誤報告分析

DEMO展示

ViewController.m文件中

?
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
/**
 *  觸發事件
 */
-(IBAction)eventTrigger:(UIButton *)button
{
    BaiduMobStat* statTracker = [BaiduMobStat defaultStat];
    [statTracker logEvent:@"Trigger" eventLabel:@"觸發事件"];//eventID在需要在管理後臺設置,eventLabel不爲空
}
  
/**
 * 觸發crash
 */
-(IBAction)crashTrigger:(UIButton *)button
{
  
    //觸發一個越界Crash
    NSArray *testAry=@[@"1",@"2",@"3"];
    NSLog(@"%@",testAry[3]);
}
  
/**
 *  訪問頁面
 */
-(IBAction)visitViewController:(UIButton *)button
{
    ViewDetailController *viewDetailViewController=[[ViewDetailController alloc] init];
    viewDetailViewController.view.backgroundColor=[UIColor colorWithRed:0.231 green:0.319 blue:0.392 alpha:1.000];
    [self.navigationController pushViewController:viewDetailViewController animated:YES];
     
  
}
  
/**
 * 觸發一個1s的事件
 */
-(IBAction)eventTriggerWithOneSecond:(UIButton *)button
{
  
    BaiduMobStat* statTracker = [BaiduMobStat defaultStat];
    [statTracker logEventWithDurationTime:@"TriggerOneSecond" eventLabel:@"觸發1s事件" durationTime:1000];
}
  
  
/**
 *  自定義事件
 */
-(IBAction)customEventTrigger:(UIButton *)button
{
  
    static Boolean isStart = false;
    if(isStart == false)
    {
        //EventId是需要在管理後臺設置的
        BaiduMobStat* statTracker = [BaiduMobStat defaultStat];
        [statTracker eventStart:@"Custom" eventLabel:@"自定義事件 start"];
        isStart = true;
        [button setTitle:@"自定義事件 結束" forState:UIControlStateNormal];
    }
    else{
        BaiduMobStat* statTracker = [BaiduMobStat defaultStat];
        [statTracker eventEnd:@"Custom" eventLabel:@"自定義事件 end"];
        isStart = false;
        [button setTitle:@"自定義事件 開始" forState:UIControlStateNormal];
    }

訪問測試頁面中的關鍵代碼

?
1
2
3
4
5
6
7
8
9
10
11
#define LifeCycle
-(void) viewDidAppear:(BOOL)animated
{
    [[BaiduMobStat defaultStat] pageviewStartWithName:@"測試頁面"];
     
}
  
-(void) viewDidDisappear:(BOOL)animated
{
    [[BaiduMobStat defaultStat] pageviewEndWithName:@"測試頁面"];
}

注:自定義事件和一些渠道及其他參數需在管理後臺設置如下

設置自定義事件管理等

測試日誌

測試日誌截圖:

測試日誌截圖1

測試日誌截圖2

遇到問題

在集成百度統計SDK過程中,筆者參照官方提供的文檔以及示例Demo沒有遇到太大問題,只有錯誤信息那裏始終是暫無數據(人爲的製造了Crash),如果只用到統計功能的話可以忽略。或者諮詢官方,或者等待百度後續更新。

上手難易

集成比較容易,有一定iOS開發經驗即可接入,文檔比較詳細,在測試模式可以打開日誌查看一些錯誤信息。比較隱祕的有一點筆者在集成SDK過程中找不到appkey,找了好久纔在管理平臺的設置裏面的應用信息裏面找到(管理後臺創建應用的appkey即爲代碼集成中app Id

開發文檔

1、在線文檔地址: http://mtj.baidu.com/sdk/ios_3.3/


轉自:http://www.devstore.cn/evaluation/testInfo/101-183.html

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章