最近业务方给咱们部门提了新的需求,但愿能一站式统计APP的几项重要数据。此次咱们尝试使用的是个推(以前专门作消息推送的)旗下新推出的产品“个数·应用统计”,根据官方的说法,个推的数据统计产品经过专业的移动应用数据分析,能够为用户的应用提供实时数据统计分析服务,包括了解版本质量、渠道情况、用户画像等。数据最后以可视化形式展示,很直观。咱们尝试了一段时间,发现效果仍是很不错的,这篇文章将为你们介绍如何从零开始快速高效地集成个数iOS SDK。html
1、登陆帐号并建立应用获取 APP IDios
一、 访问[个推开发者中心](https://dev.getui.com/dev/#/login),点击当即注册:sql
(也能够从个推官网进入www.getui.com,点击右上角“开发者中心”。)固然,若是你已经注册过个推推送的帐号,直接登陆使用便可。缓存
2、根据我的状况填写并注册帐号:ruby
3、返回[个推开发者中心](https://dev.getui.com/dev/#/login)使用上个步骤注册好的帐号登陆,进入开发者平台面板后,选择左边菜单栏的个数·应用统计:网络
4、进入个数·应用统计面板后,选择右上角的新增应用添加新的应用:session
5、填写应用相关信息,勾选iOS,点击提交新增应用:app
6、新增应用成功会自动返回应用列表,找到新增的应用,点击应用配置:工具
7、在配置信息下能够看到APP ID,将其复制保存,后续集成将会使用到APP ID:开发工具
2、配置个数SDK
个数iOS SDK提供两种集成方式,分别是CocoaPods集成和Xcode手动集成,两种集成方式本文都会介绍。在集成SDK时选择其中一种便可(推荐使用CocoaPods集成)。
3、CocoaPods集成方式
1、安装CocoaPods
安装方式很简单 , Mac下都自带ruby,使用ruby的gem命令便可下载安装:
$ sudo gem install cocoapods
$ pod setup
2、准备Podfile
使用时须要新建一个名为Podfile的文件(若已存在该文件则不须要从新建立),以下格式,将依赖的库名字依次列在文件中便可:
target 'YourTargetName' do
platform :ios, "8.0"
pod 'GCSDK'
end
3、完成GCSDK导入
将编辑好的Podfile文件放到你的项目根目录中,执行以下命令便可:
$ cd "<path/to/project>"
$ pod install
4、使用CocosPods集成SDK后,须要关闭原工程,从新在项目根目录下打开 yourProjectName.xcworkspace的文件进行后续开发:
4、Xcode 集成方式
1、个数应用统计提供了一个 SDK 开发工具包,包含了iOS SDK的所有所需资源,前往个推文档中心下载,地址:http://docs.getui.com/download.html,选择个数·应用统计下的iOS端下载SDK资源包 :
2、解压资源包内容能够看到以下文件结构:
3、资源包内容详解
接入文档/个数集成文档.pdf : 个数集成文档;
资源文件/GTCountSDK.h: 个数SDK头文件
资源文件/libGTCountSDK.a: 个数SDK主包静态库
资源文件/libGTCommonSDK.a: 个数SDK工具库
Demo工程/GTCountDemo/: 个数demo工程
4、注意:libGTCountSDK.a、libGTCommonSDK.a 使用lipo工具将
支持i386、x86_64、arm64、armv7的代码打包到了一块儿,因此这个库将同时支持simulator和device,支持的iOS版本为 7.0 及以上。
5、个数SDK静态库设置
右击添加文件,导入资源文件目录下的文件。
6、添加依赖库(必须,以下图)
添加系统库支持:
* libsqlit3.tbd
* libz.tbd
* AdSupport.framework
7、设置 Other Linker Flags
找到主工程的target -> Build Setting -> Linking -> Other Linker Flags,将其设置为-ObjC(如图所示):
5、初始化并启动SDK
1、初始化启动接口的相关信息:
2、在项目工程的AppDelegate.m中添加头文件,使用前面获取的APP ID初始化并启动SDK:
#import 'GTCountSDK.h'
#define kGcAppId @"xxxxxxx"
@implementation AppDelegate
- (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions {
// 启动个数 SDK
[GTCountSDK startSDKWithAppId:kGcAppId withChannelId:@"appstore"];
// 使用 SDK 实例的 reportStrategy 属性设置上报策略。
[[GTCountSDK sharedInstance] setReportStrategy:GESHU_STRATEGY_WIFI_ONLY]
// 使用 SDK 实例的 sessionTime 属性获取 sessionTime 的值。
NSLog(@"sessionTime %ld",[[GTCountSDK sharedInstance]sessionTime]);
return YES;
}
6、高级功能:自定义事件
自定义事件能够统计某些用户自定义埋点的发生时间以及次数,例如广告点击、短信数量等。一般event_id用于表示某种行为或功能的统计(如统计“发送”按钮被触发多少次),而参数则用于标识统计的具体对象(如功能为“下载”的按钮),由event_id和properties惟一标识一个事件。
自定义事件主要分为两种:
(1)次数统计:统计指定行为被触发的次数。
(2)时长统计:统计指定行为消耗的时间,单位为秒。须要eventBegin和eventEnd接口成对使用才可生效。
其中每类事件都支持使用properties参数类型。
注意:event_id须要先在个推开发者中心(https://dev.getui.com/)进行配置,才能参与正常的数据统计。event_id不能包含空格或转义字符,以下:
1、点击侧边菜单栏事件列表。
2、点击新增事件按钮。
3、根据事件类型分别输入相应的事件ID以及事件名称。
4、在移动端项目中添加对应事件类型和对应event_id的事件:
@implementation TrackCountEventController
- (IBAction)clickCount:(id)sender {
[GTCountSDK trackCountEvent:@"countid1" withArgs:@{@"ckey1":@"cvalue1"}];
}
-(void) viewDidAppear:(BOOL)animated {
// 为了正确统计,要确保开始和结束接口的参数 self.eventProperty 内存地址是一致的。
self.eventProperty = @{@"key":@"value1"};
[GTCountSDK trackCustomKeyValueEventBegin:@"eid1" withArgs:self.eventProperty];
[super viewDidAppear:animated];
}
- (void)viewWillDisappear:(BOOL)animated {
[GTCountSDK trackCustomKeyValueEventEnd:@"eid1" withArgs:self.eventProperty];
[super viewWillDisappear:animated];
}
@end
7、高级功能:数据上报策略
个数应用统计可自定义数据上报策略,开发者可根据自身应用需求设置,可以有效控制用户流量开销。
1、SDK的数据上报策略包括如下 5 种(默认为 GESHU_STRATEGY_PERIOD,周期为 60 分钟):
2、注意:数据上报策略建议在应用启动时设置。数据上报策略使用如下接口进行设置和查看:
/**
设置上报策略
*/
@property(nonatomic,assign)GeShuStatReportStrategyType reportStrategy;
3、WIFI 环境下上报策略
考虑到 WIFI 网络环境下上报数据的代价较小,所以默认状况在 WIFI 环境下,使用实时上报策略。若要关闭该策略,能够调用如下接口关闭:
/**
智能上报
开启之后设备接入WIFI会实时上报
不然按照全局策略上报
默认打开
*/
@property (nonatomic, assign)BOOL smartReporting;
4、数据上报策略相关接口
/**
统计上报策略为 BATCH 时,触发上报时最小缓存消息数,默认32条
*/
@property (nonatomic, assign)NSUInteger minBatchReportNumber;
/**
上报策略为 PERIOD 时发送间隔,单位分钟,默认一天(60分钟)
*/
@property (nonatomic, assign)NSUInteger periodMinutes;
8、集成 SDK 的应用提交App Store注意事项
1、为了获取精准的统计结果,需添加AdSupport.framework库支持,所以在提交App Store时需作如下操做:
(1)在App内投放广告,获取IDFA可经过苹果审核。
(2)App内无广告,但先前投放了特定广告,可参考以下勾选,经过苹果审核。
勾选如图:
以上就是我集成个推应用统计产品(个数)的全过程,但愿对你有帮助!若是你们有什么其余问题,咱们能够留言区交流。