文档章节

个推数据统计产品(个数)iOS集成实践

个推
 个推
发布于 2018/08/10 10:17
字数 2009
阅读 5
收藏 0

最近业务方给我们部门提了新的需求,希望能一站式统计APP的几项重要数据。这次我们尝试使用的是个推(之前专门做消息推送的)旗下新推出的产品“个数·应用统计”,根据官方的说法,个推的数据统计产品通过专业的移动应用数据分析,可以为用户的应用提供实时数据统计分析服务,包括了解版本质量、渠道状况、用户画像等。数据最后以可视化形式展现,很直观。我们尝试了一段时间,发现效果还是很不错的,这篇文章将为大家介绍如何从零开始快速高效地集成个数iOS SDK。

 

一、登录账号并创建应用获取 APP ID

 

1、 访问[个推开发者中心](https://dev.getui.com/dev/#/login),点击立即注册:

(也可以从个推官网进入www.getui.com,点击右上角“开发者中心”。)当然,如果你已经注册过个推推送的账号,直接登录使用即可。

 

 2、根据个人情况填写并注册账号:

 

 

3、返回[个推开发者中心](https://dev.getui.com/dev/#/login)使用上个步骤注册好的账号登录,进入开发者平台面板后,选择左边菜单栏的个数·应用统计:

 

 

4、进入个数·应用统计面板后,选择右上角的新增应用添加新的应用:

 

 

5、填写应用相关信息,勾选iOS,点击提交新增应用:

 

 

6、新增应用成功会自动返回应用列表,找到新增的应用,点击应用配置:

 

 

7、在配置信息下可以看到APP ID,将其复制保存,后续集成将会使用到APP ID:

 

 

二、配置个数SDK

 

个数iOS SDK提供两种集成方式,分别是CocoaPods集成和Xcode手动集成,两种集成方式本文都会介绍。在集成SDK时选择其中一种即可(推荐使用CocoaPods集成)。

 

三、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的文件进行后续开发:

 

四、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(如图所示):

 

 

五、初始化并启动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;

 }

 

六、高级功能:自定义事件

 

自定义事件可以统计某些用户自定义埋点的发生时间以及次数,例如广告点击、短信数量等。通常event_id用于表示某种行为或功能的统计(如统计“发送”按钮被触发多少次),而参数则用于标识统计的具体对象(如功能为“下载”的按钮),由event_idproperties唯一标识一个事件。

 

自定义事件主要分为两种:

 

(1)次数统计:统计指定行为被触发的次数。

 

(2)时长统计:统计指定行为消耗的时间,单位为秒。需要eventBegineventEnd接口成对使用才可生效。

 

其中每类事件都支持使用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

 

七、高级功能:数据上报策略

 

个数应用统计可自定义数据上报策略,开发者可根据自身应用需求设置,能够有效控制用户流量开销。

 

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;

 

八、集成 SDK 的应用提交App Store注意事项

 

1、为了获取精准的统计结果,需添加AdSupport.framework库支持,因此在提交App Store时需做以下操作:

 

(1)在App内投放广告,获取IDFA可通过苹果审核。

 

(2)App内无广告,但先前投放了特定广告,可参考如下勾选,通过苹果审核。     

 

  勾选如图:

 

以上就是我集成个推应用统计产品(个数)的全过程,希望对你有帮助!如果大家有什么其他问题,我们可以留言区交流。

© 著作权归作者所有

个推
粉丝 29
博文 79
码字总数 151285
作品 0
杭州
私信 提问
个推数据统计产品(个数)iOS集成实践

最近业务方给我们部门提了新的需求,希望能一站式统计APP的几项重要数据。这次我们尝试使用的是个推(之前专门做消息推送的)旗下新推出的产品“个数·应用统计”,根据官方的说法,个推的数...

个推
2018/07/17
4
0
应用统计|移动端数据统计和分析最佳实践

作者:个推iOS高级研发工程师小袋子 前言 随着移动互联网市场快速发展,以往“×××圈地”式的粗犷运营时代已成为过去时。大环境的改变,也导致移动端的数据统计分析在产品的研发、决策、运...

个推
2018/07/26
0
0
移动端数据统计,精细化运营的永动机

前言 随着移动互联网市场快速发展,以往“跑马圈地”式的粗犷运营时代已成为过去时。大环境的改变,也导致移动端的数据统计分析在产品的研发、决策、运营等方面起着越来越重要的作用,“精细...

个推
2018/07/26
82
0
app推广渠道数据统计分析以及个性化安装为什么要选择shareinstall?

shareinstall是一个集成SDK工具,它能够兼容Android和iOS,可以实现对app推广过程中的访问量、注册量、活跃、安装量以及留在网页上的时间长短进行统计。同时能够解决现实中遇到的免填邀请码安...

h07094223
2018/05/24
0
0
友推分享组件海外版SDK发布

友推(youtui.mobi)作为国内优秀的移动应用组件服务提供商,为应用提供社交分享组件、积分兑换组件、第三方登录组件等整合组件服务。 友推贴心地为针对国外社交流量的开发者,推出分享组件海外...

a2664296548
2015/01/19
4
0

没有更多内容

加载失败,请刷新页面

加载更多

作为一个(IT)程序员!聊天没有话题?试试这十二种技巧

首先呢?我是一名程序员,经常性和同事没话题。 因为每天都会有自己的任务要做,程序员对于其他行业来说;是相对来说比较忙的。你会经常看到程序员在发呆、调试密密麻麻代码、红色报错发呆;...

小英子wep
今天
17
0
【SpringBoot】产生背景及简介

一、SpringBoot介绍 Spring Boot 是由 Pivotal 团队提供的全新框架,其设计目的是用来简化新 Spring 应用的初始搭建以及开发过程,该框架使用了特定的方式来进行配置,从而使开发人员不再需要...

zw965
今天
5
0
简述并发编程分为三个核心问题:分工、同步、互斥。

总的来说,并发编程可以总结为三个核心问题:分工、同步、互斥。 所谓分工指的是如何高效地拆解任务并分配给线程,而同步指的是线程之间如何协作,互斥则是保证同一时刻只允许一个线程访问共...

dust8080
今天
6
0
OSChina 周四乱弹 —— 当你简历注水但还是找到了工作

Osc乱弹歌单(2019)请戳(这里) 【今日歌曲】 @花间小酌 :#今日歌曲推荐# 分享成龙的单曲《男儿当自强》。 《男儿当自强》- 成龙 手机党少年们想听歌,请使劲儿戳(这里) @hxg2016 :刚在...

小小编辑
今天
3.5K
22
靠写代码赚钱的一些门路

作者 @mezod 译者 @josephchang10 如今,通过自己的代码去赚钱变得越来越简单,不过对很多人来说依然还是很难,因为他们不知道有哪些门路。 今天给大家分享一个精彩的 GitHub 库,这个库整理...

高级农民工
昨天
11
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部