扫一扫,手机查看更快捷

LOTUSEED帮助文档

Android & iOS & WinPhone & Html5 SDK集成指南

Lotuseed ios SDK 集成指南

一、综述

Lotuseed Analytics帮助移动应用开发者解决用户/终端数据收集至数据标准化分析的全部繁琐问题,以可视化数据报表的形式辅助开发者更好的精细化运营移动应用产品。

1.适用范围:

SDK适用于Native方式开发的iOS4.3及以上的设备应用。
#Unity 3D & Cocos2D-x请自行二次封装或使用Lotuseed的专用插件版本。

2.统计标准:

新增用户:
新用户是指启动了手机应用的用户,而不是仅仅安装了应用的用户。
应用启动:
用户从打开应用界面至离开应用界面的完整过程,如果用户在离开应用界面后30 秒内重新回到应用中,将被认为是上次应用被打扰后的延续,记为一次完整启动。
活跃用户:
活跃用户是指在指定时间段至少启动了应用一次的用户。
留存用户:
指新增用户在指定时间段且单位时间内连续访问的用户比例。
回访用户:
指新增用户在指定时间段某单位时间内有访问过的用户比例。

二、接入流程

STEP 1、为应用申请 APP KEY

进入http://www.lotuseed.com网站,使用您的注册账号登录后,请预先创建一款iOS(应用)产品,您将获得一串编码后的APP KEY,用于唯一标识您的一款应用。

STEP 2、向工程中导入追踪SDK

STEP 3、添加依赖框架(Framework)和编译器选项

STEP 4、添加SDK初始化代码

在主AppDelegate.m的
- (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions
方法内按需添加如下语句:

//[Lotuseed setDebugMode:YES]; //SDK处于DEBUG模式,发布时请关闭
//[Lotuseed setSessionContinueSeconds:15]; //更改应用默认Session重启间隔,单位:秒
[Lotuseed setCrashReportEnabled:YES]; //是否提交程序异常报告[Lotuseed startWithAppKey:@"YOUR_APPKEY"]; //必须添加的接口调用
//其他Lotuseed API调用请放在startWithAppKey()后!!!
[Lotuseed checkUpate]; //允许应用更新提醒
[Lotuseed updateOnlineConfig]; //更新在线参数配置

>如需区分多渠道,则请使用:
+ (void)startWithAppKey:(NSString *)appKey channelID:(NSString*)cid;
如需多app统计独立设备数,则请使用:
+ (void)startWithAppKey:(NSString *)appKey channelID:(NSString *)cid appleID:(NSString*)aid; //其中aid为苹果开发者账号ID
当应用两次打开之间间隔超过10秒(SDK默认值)时,Lotuseed统计系统会认为是两个的独立的session(启动),类似场景例如用户回到home,经过一段时间后再返回之前的应用。
修改应用两次打开之间间隔默认值,请调用接口:
+ (void)setSessionContinueSeconds:(int)seconds;

STEP 5、添加调用方法

参见"添加方法"一节。

STEP 6、进行数据测试

集成完毕并打包后,请以真机测试并查验Lotuseed WEB输出报表,以确保SDK集成的正确。

三 、添加方法

参考"SDK初始化"一节,除setXXX方法外,其他方法请在startWithAppKey方法后进行调用,防止产生无效数据。

1、跟踪记录PageView

接口说明
onPageViewBegin和onPageViewEnd接口用于跟踪记录PageView访问时长、页面转化等;
这两个API需配对使用,参数pageName用于标识页面名称;另外下一个onPageViewBegin需在前一个onPageViewEnd后调用。
接口定义

//页面起始
+ (void)onPageViewBegin:(NSString *)pageName;
//页面结束
+ (void)onPageViewEnd:(NSString *)pageName;

参数说明

参数 类型 描述
pageName NSString PageView标识串

示例代码

- (void)viewWillAppear:(BOOL)animated {
[super viewWillAppear:animated];
[Lotuseed onPageViewBegin:@"PageOne"];
}
- (void)viewWillDisappear:(BOOL)animated {
[super viewWillDisappear:animated];
[Lotuseed onPageViewEnd:@"PageOne"];
}

2、使用错误报告

接口说明
用于捕捉应用程序内未导致crash的错误日志,辅助开发者进行错误定位;
接口说明

//自动提交错误
+ (void) setCrashReportEnabled:(BOOL)value;
//手动提交错误
+ (void) onCustomLog:(NSString *)logmsg;

参数说明

参数 类型 描述
value BOOL 是否采用自动提交(SDK默认不提交错误日志)
Logmsg NSString 提交的调试日志信息

如何使用

-Lotuseed SDK提供两种提交错误报告的方法:
1) 自动提交Crash Log :
[Lotuseed setCrashReportEnabled:YES];
2) 手动提交Custom Log:
代码中调用 [Lotuseed onCustomLog :(NSString*)logmsg];
参数为开发者提交的调试日志信息;

3、发送自定义事件

接口说明
除了基本统计分析功能外,我们还支持您自定义的事件分析,例如您可以统计游戏中通过不同关卡的人数,广告的点击次数或者视频被播放的次数等等。
事件数量统计

//默认使用智能发送策略模式接口
+ (void)onEvent:(NSString *)eventID;
+ (void)onEvent:(NSString *)eventID withCount:(long)count;
+ (void)onEvent:(NSString *)eventID label:(NSString *)label;
+(void)onEvent:(NSString *)eventID label:(NSString *)label withCount:(long)count;
+ (void)onEvent:(NSString *)eventID attributes:(NSDictionary *)dic;
+(void)onEvent:(NSString *)eventID attributes:(NSDictionary

4、获取独立设备ID

接口定义

//获取设备ID

+ (NSString*)getDeviceID;

注意
如需支持iOS7及以上设备多app取得相同设备ID,则请参考startWithAppKey中的接口参数appleID。

5、添加辅助功能

添加app更新提醒功能

接口说明

支持app更新提醒功能,更新提示语和URL在Lotuseed Web上进行配置; 接口定义

//默认方式进行版本更新检查

+ (void)checkUpate;

//自定义提示标题进行版本更新检查

+(void)checkUpate:(NSString*)title updateButtonCaption:(NSString*)update cancelButtonCaption:(NSString*)cancel;

//自定义Delegate模式进行版本更新检查

+ (void)checkUpdateWithDelegate:(id)delegate didFinishSelector:(SEL)selector;

//判断当前是否正在更新检查中

+ (BOOL)isUpdating;

参数说明

参数 类型 描述
title NSString 更新提示界面标题文本串
update NSString 立即更新按钮提示文本串
cancel NSString 取消更新按钮提示文本串
delegate id 自定义更新Delegate对象
selector SEL 自定义更新回调方法

在线参数配置功能

接口说明
1.在线参数配置功能主要用于解决在不更新升级app的情况下通过云端下发参数值而改变app的逻辑,如彩蛋功能;
2.通过Lotuseed Web云端配置key-value键值对。 value可以是一个字符串,也可以是一个文件下载URL;key,value支持中文字符编码;如果参数是一个文件,SDK负责自动文件下载实现;
3.updateOnlineConfig()更新在线参数,getConfigParams()获取在线参数。
接口定义

//更新在线参数
+ (void) updateOnlineConfig;
//通过key获取在线参数
+(void) getConfigParams:(NSString*)key withDefaultValue:(NSString*)defaultValue;

参数说明

参数 类型 描述
key String 获取参数的key
defaultValue String 未获取到时的默认值

如何使用
1.在程序入口添加以下语句:
[Lotuseed updateOnlineConfig];
2.程序内获取参数方法如下:
NSString *param = [Lotuseed getConfigParams:@"key" withDefaultValue:@"defaultValue"];
//如果是文件参数,则该方法返回本地文件名;

四、集成检查列表

1.确保调用了startWithAppKey接口,并检查是否填入了正确的LOTUSEED_APPKEY和LOTUSEED_CHANNEL;
2.确保除setXXX接口外,其他所有接口在startWithAppKey接口后调用;
3.检查是否正确添加了依赖库的引用;

五、特别说明

1.Lotuseed SDK默认为RELEASE模式,如果调试则请在SDK初始化代码中调用:[Lotuseed setDebugMode:YES];
2.SDK默认统计数据发送策略:
a.debug模式时实时发送数据;
b.realease模式时session启动事件数据实时发送(包括历史session所有缓存数据);
c.缓存数据量达上限时会触发发送统计数据;

六、FAQ

1、 为何安装了好几次应用,设备激活量没有变化?
答:同一台设备反复卸载和安装应用不会记录多次设备激活;如果是在多个设备上打开的应用,请稍后刷新一下页面,查看激活数据是否变化。
2、 为何测试渠道包时,渠道数据报表中没有任何数据?
答:请确认是否是在同一台设备上在卸载和安装渠道包进行测试,每台设备只被记录到初装渠道,更换渠道包不会产生新的激活量;
测试每个渠道包时请使用一台没测试过的设备进行。

七、技术支持

QQ:835371627
email: support@lotuseed.com
我们会尽快回复您的意见或建议。

  • 帮助中心

    查阅文档、提交问题工单、搜索故障的解决方案,都可以前往帮助中心

    前往帮助中心 >
  • 销售咨询

    销售经理为您解答企业版 LOTUSEED 报价、部署实施方案的各种问题。

    support@lotuseed.com
  • 技术支持

    使用 LOTUSEED 时,遇到任何技术上的问题,都可以发送邮件给我们。

    support@lotuseed.com