四川县级融媒体技术平台针对区县APP用户操作行为的统计。本SDK中各接口方法,需要各区县开发商自行在APP中各操作节点中埋点调用。
请将以下代码添加到 AppDelegate.m 引用头文件的位置;
//引入SDk功能所需头文件
#import <SCDataStatisticsSDK/SCDataStatisticsService.h>
将以下初始化代码加入到 AppDelegate.m 中的didFinishLaunchingWithOptions方法中,用以完成SDK的基本数据配置;
SCDataStatisticsLaunchConfig *config = [SCDataStatisticsLaunchConfig new];
config.appVersion = @"你的app版本号";
config.areaId = @"你的app所分配的唯一区域码";
config.deviceId = @"你的设备唯一标识";
config.ipAddress = @"你的设备的ip地址";
config.location = @"当前登录的定位位置";
config.netType = @"你的设备的网络";
[[SCDataStatisticsService shareInstance] setupWithConfig:config];
SDK将所有的统计事件模型化,通过创建模型对象,然后调用统一的添加日志统计方法来完成统计接口的调用。
模型名称 | 统计事件 |
---|---|
SCDataStatisticsEventObject | 所有事件的父类 |
SCDataStatisticsLoginEvent | 登录 |
SCDataStatisticsAccessPageEvent | 页面访问(进入/退出页面) |
SCDataStatisticsCollectEvent | 收藏 |
SCDataStatisticsCommentEvent | 评论 |
SCDataStatisticsForwoardEvent | 转发 |
SCDataStatisticsThumbsUpEvent | 点赞 |
SCDataStatisticsLiveEvent | 直播 |
SCDataStatisticsSearchEvent | 搜索 |
SCDataStatisticsVedioEvent | 视频播放 |
SCDataStatisticsAppTerminateEvent | app退出 |
SCDataStatisticsReportEvent | 发布爆料 |
- (void)setupWithConfig:(SCDataStatisticsLaunchConfig *)config;
接口说明
初始化接口,此事件为必调用项,建议在application:didFinishLaunchingWithOptions:中调用
参数说明
参数名 | 参数说明 | 是否必传 | 说明 |
---|---|---|---|
config | SCDataStatisticsLaunchConfig类 | 是 |
SCDataStatisticsLaunchConfig类参数说明
参数名 | 数据类型 | 是否必传 | 说明 |
---|---|---|---|
deviceId | NSString | 是 | 设备唯一UUID |
areaId | NSString | 是 | 区域Id,每个区域所分配的Id,根据id区分不同地区的日志内容 |
appVersion | NSString | 是 | app的版本号. 例如1.0.0 |
ipAddress | NSString | 是 | 设备ip地址 |
location | NSString | 否 | 定位. 格式:成都市|武侯区 |
netType | NSString | 否 | 网络情况. 1、wifi;2、移动网络(传type1或者2) |
- (void)addLoginEventLog:(NSString *)userId;
接口说明
统计用户登录应用的日志(登录统计可用这个接口调用,也可用对象方式调用)
参数说明
参数名 | 参数类型 | 是否必传 | 说明 |
---|---|---|---|
userId | NSString | 是 | 用户id(一般为用户登录手机号) |
调用示例
[[SCDataStatisticsService shareInstance] addLoginEventLog:@"12345"];
- (void)addEventLog:(SCDataStatisticsEventObject *)event;
接口说明
所有操作事件对象统一调用的接口
参数说明
参数名 | 参数说明 |
---|---|
event | 操作事件对象(所有事件对象在 5.2 “统计事件模型说明” 中有说明) |
注:部分操作事件参数中的userId、sourceName、sourceId均为非必传参数,但为了统计日志的全面性和准确性,尽量将每个参数和值都传递以做数据统计。
//此接口根据需求调用
- (void)setDebug:(BOOL)enable;
接口说明
是否打印Debug级的log信息, 默认为NO
参数说明
参数名 | 参数类型 | 是否必传 | 说明 |
---|---|---|---|
enable | BOOL | 是 | 是否打印日志,YES为打印,NO为关闭。(请在SDK启动后调用本接口,调用本接口可打开日志级别为: Debug,打印调试日志。请在发布产品时改为NO,避免产生不必要的IO ) |
模型名称:SCDataStatisticsLoginEvent
参数说明
参数名 | 数据类型 | 是否必传 | 说明 |
---|---|---|---|
userId | NSString | 是 | 用户id(一般为用户登录手机号) |
模型名称: SCDataStatisticsAccessPageEvent
参数说明
参数名 | 数据类型 | 是否必传 | 说明 |
---|---|---|---|
userId | NSString | 否 | 用户id(一般为用户登录手机号) |
sourceName | NSString | 否 | 资源名称(例如新闻标题,或者访问页面名称) |
sourceId | NSString | 否 | 资源id(例如新闻id) |
isAccess | BOOL | 是 | 是否是进入页面. 进入页面为YES,退出页面为NO |
调用示例
//创建访问页面的事件对象
SCDataStatisticsAccessPageEvent *event = [SCDataStatisticsAccessPageEvent new];
//访问页面所需要的参数
event.isAccess = YES;
event.sourceName = @"页面名称";
event.sourceId = @"0";
event.userId = @"uesrId";
//调用添加日志的方法
[[SCDataStatisticsService shareInstance] addEventLog:event];
模型名称:SCDataStatisticsCollectEvent
参数说明
参数名 | 数据类型 | 是否必传 | 说明 |
---|---|---|---|
userId | NSString | 否 | 用户id(一般为用户登录手机号) |
sourceName | NSString | 否 | 资源名称(例如新闻标题,或者访问页面名称) |
sourceId | NSString | 否 | 资源id(例如新闻id) |
sourceType | NSInteger | 是 | 收藏的类型,0 - 新闻、1 - 专题、2 - 直播/频道、3 - 其他 |
调用示例
//创建收藏的事件对象
SCDataStatisticsCollectEvent *event = [SCDataStatisticsCollectEvent new];
event.sourceName = @"页面名称";
event.sourceId = @"0";
event.userId = @"uesrId";
event.sourceType = 0;
//调用添加日志的方法
[[SCDataStatisticsService shareInstance] addEventLog:event];
模型名称:SCDataStatisticsCommentEvent
参数说明
参数名 | 数据类型 | 是否必传 | 说明 |
---|---|---|---|
userId | NSString | 否 | 用户id(一般为用户登录手机号) |
sourceName | NSString | 否 | 资源名称(例如新闻标题,或者访问页面名称) |
sourceId | NSString | 否 | 资源id(例如新闻id) |
commentDetail | NSString | 是 | 评论内容 |
调用示例
SCDataStatisticsCommentEvent *event = [SCDataStatisticsCommentEvent new];
event.sourceName = @"首页";
event.sourceId = @"0";
event.userId = @"12345";
event.commentDetail = @"评论详情";
[[SCDataStatisticsService shareInstance] addEventLog:event];
模型名称:SCDataStatisticsForwoardEvent
参数说明
参数名 | 数据类型 | 是否必传 | 说明 |
---|---|---|---|
userId | NSString | 否 | 用户id(一般为用户登录手机号) |
sourceName | NSString | 否 | 资源名称(例如新闻标题,或者访问页面名称) |
sourceId | NSString | 否 | 资源id(例如新闻id) |
shareType | NSInteger | 是 | 分享渠道,0 - 微信、1 - 微博、2 - QQ、3 - 其他 |
调用示例
SCDataStatisticsForwoardEvent *event = [SCDataStatisticsForwoardEvent new];
event.sourceName = @"首页";
event.sourceId = @"0";
event.userId = @"12345";
event.shareType = 0;
[[SCDataStatisticsService shareInstance] addEventLog:event];
模型名称: SCDataStatisticsThumbsUpEvent
参数说明
参数名 | 数据类型 | 是否必传 | 说明 |
---|---|---|---|
userId | NSString | 否 | 用户id(一般为用户登录手机号) |
sourceName | NSString | 否 | 资源名称(例如新闻标题,或者访问页面名称) |
sourceId | NSString | 否 | 资源id(例如新闻id) |
isLike | BOOL | 是 | 是否为点赞. 点赞为YES,取消点赞为NO |
模型名称:SCDataStatisticsLiveEvent
参数说明
参数名 | 数据类型 | 是否必传 | 说明 |
---|---|---|---|
userId | NSString | 否 | 用户id(一般为用户登录手机号) |
sourceName | NSString | 否 | 资源名称(例如新闻标题,或者访问页面名称) |
sourceId | NSString | 否 | 资源id(例如新闻id) |
heartbeatLength | NSInteger | 是 | 心跳时间,第一次开启直播统计直播事件时心跳值为0,之后每次调用值为60;即每隔60秒上传一次直播日志 |
调用示例
SCDataStatisticsLiveEvent *event = [SCDataStatisticsLiveEvent new];
event.sourceName = @"首页";
event.sourceId = @"0";
event.userId = @"12345";
event.heartbeatLength = 60;
[[SCDataStatisticsService shareInstance] addEventLog:event];
模型名称:SCDataStatisticsSearchEvent
参数说明
参数名 | 数据类型 | 是否必传 | 说明 |
---|---|---|---|
userId | NSString | 否 | 用户id(一般为用户登录手机号) |
content | NSString | 是 | 搜索内容 |
调用示例
SCDataStatisticsSearchEvent *event = [SCDataStatisticsSearchEvent new];
event.userId = @"12345";
event.content = @"搜索内容";
[[SCDataStatisticsService shareInstance] addEventLog:event];
模型名称:SCDataStatisticsVedioEvent
参数说明
参数名 | 数据类型 | 是否必传 | 说明 |
---|---|---|---|
userId | NSString | 否 | 用户id(一般为用户登录手机号) |
sourceName | NSString | 否 | 资源名称(例如新闻标题,或者访问页面名称) |
sourceId | NSString | 否 | 资源id(例如新闻id) |
contentLength | NSInteger | 是 | 视频时长(单位:秒),无时长默认为0; |
isComplete | BOOL | 是 | 是否播放完成,YES为播放完成,NO为未播放完成; |
调用示例
SCDataStatisticsVedioEvent *videoEvent = [SCDataStatisticsVedioEvent new];
videoEvent.sourceName = @"首页";
videoEvent.sourceId = @"0";
videoEvent.userId = @"12345";
videoEvent.isComplete = YES;
videoEvent.contentLength = 6000;
[[SCDataStatisticsService shareInstance] addEventLog:videoEvent];
模型名称:SCDataStatisticsAppTerminateEvent
参数说明
无
调用示例
SCDataStatisticsAppTerminateEvent *terminateEventEvent = [SCDataStatisticsAppTerminateEvent new];
[[SCDataStatisticsService shareInstance] addEventLog:terminateEventEvent];
模型名称:SCDataStatisticsReportEvent
参数说明
参数名 | 数据类型 | 是否必传 | 说明 |
---|---|---|---|
userId | NSString | 否 | 用户id(一般为用户登录手机号) |
sourceContent | NSString | 是 | 爆料内容详情 |
sourceId | NSString | 是 | 发表内容id |
调用示例
SCDataStatisticsReportEvent *reportEvent = [SCDataStatisticsReportEvent new];
reportEvent.sourceContent = @"首页";
reportEvent.sourceId = @"0";
reportEvent.userId = @"12345";
[[SCDataStatisticsService shareInstance] addEventLog:reportEvent];