百度移动统计iOS版V3.3服务评测

时间:2020-12-22 15:52:50

评测环境

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/

点击 “新增应用”,创建我们的项目

百度移动统计iOS版V3.3服务评测

创建名为“DevStore服务评测Demo”的应用

百度移动统计iOS版V3.3服务评测

创建成功,保存下appkey,集成SDK后续过程会用到

百度移动统计iOS版V3.3服务评测

至此,我们的项目在开发平台创建完成。下载我们需要集成的SDK,SDK下载地址: http://mtj.baidu.com/web/welcome/sdk

百度移动统计iOS版V3.3服务评测

2.集成SDK

创建工程项目

百度移动统计iOS版V3.3服务评测

项目创建完成

百度移动统计iOS版V3.3服务评测

引用配置SDK

SDK下载解压如下,当前最新版本为V3.3

百度移动统计iOS版V3.3服务评测

注: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,如下:

百度移动统计iOS版V3.3服务评测

百度移动统计iOS版V3.3服务评测

注:iOS-api   提供相应架构的SDK

    iOS-demo 示例Demo

    iOS-doc   api文档

打开iOS-api文件夹,依次为真机使用的SDK,模拟器使用SDK,TouchJSON类库,通用的SDK。

可以根据不同的应用场景选用SDK,我这里的服务评测Demo,使用的通用SDK。

集成入项目,如下图SDK文件夹中:

百度移动统计iOS版V3.3服务评测

注:引用百度统计SDK的时候需要同时加入TouchJSON类库,TouchJSON不支持ARC,这里需要做下处理下,ARC项目集成非ARC类库需要加入-fno-objc-arc如下(同样如果是非ARC项目引用ARC类库需要加入-fobjc-arc)。

百度移动统计iOS版V3.3服务评测

加入依赖类库

百度移动统计iOS版V3.3服务评测

注: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统计的分析工具,主要有用户分析统计,页面访问统计,应用内事件统计,渠道版本统计,错误分析等功能。

功能特色

主要功能的实现

百度移动统计iOS版V3.3服务评测

用户趋势分析

百度移动统计iOS版V3.3服务评测

用户活跃统计

百度移动统计iOS版V3.3服务评测

留存用户统计

百度移动统计iOS版V3.3服务评测

访问页面统计

百度移动统计iOS版V3.3服务评测

访问路径统计

百度移动统计iOS版V3.3服务评测

实时抽样分析

百度移动统计iOS版V3.3服务评测

用户属性分析

百度移动统计iOS版V3.3服务评测

地域分布分析

百度移动统计iOS版V3.3服务评测

终端分析

百度移动统计iOS版V3.3服务评测

渠道分布分析

百度移动统计iOS版V3.3服务评测

版本分布统计

百度移动统计iOS版V3.3服务评测

事件分析

百度移动统计iOS版V3.3服务评测

错误报告分析

百度移动统计iOS版V3.3服务评测

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:@ "测试页面" ];
}

注:自定义事件和一些渠道及其他参数需在管理后台设置如下

百度移动统计iOS版V3.3服务评测

测试日志

测试日志截图:

百度移动统计iOS版V3.3服务评测

百度移动统计iOS版V3.3服务评测

遇到问题

在集成百度统计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