iOS SDK 使用指南
创建APP,获得AppKey
在你注册登录Crasheye之后,便可创建自己的APP,每个APP都有全局唯一的AppKey,用来唯一标识你的APP。AppKey在初始化SDK时需要使用
如何创建APP:1. 登录Crasheye进入后台管理页面 2. 点击网页右上角个人头像按钮,在弹出的菜单中点击选择[我的应用],进入应用列表页面 3. 在应用列表页面,点击[创建新的应用],会弹出创建新应用的提示框 4. 输入应用名称,选择所属的平台类型,点击[确定]按钮,就完成了一个新应用的创建
AppKey用来唯一标识你的移动应用,为防止别人滥用,请勿泄露。
![](http://testplus.ks3-cn-beijing.ksyun.com/cn/images/docs/crasheye/create_ios_app.jpg)
下载SDK
在SDK下载页面点击下载iOS SDK
导入iOS SDK
将下载后的[Crasheye.h]和[libCrasheye.a]文件拖动到你的XCode工程中,如下图所示:
![](http://testplus.ks3-cn-beijing.ksyun.com/cn/images/docs/crasheye/ios_drag_lib.jpg)
或者你也可以在XCode中右键点击你的工程,点击选择[Add Files to "xxxx"...]:
![](http://testplus.ks3-cn-beijing.ksyun.com/cn/images/docs/crasheye/ios_add_lib.jpg)
在之后弹出的选框中勾选[Copy items if needed], 并确保[Add To Targets]已勾选相应的target。
![](http://testplus.ks3-cn-beijing.ksyun.com/cn/images/docs/crasheye/ios_choose_option.jpg)
配置工程
打开你的XCode工程设置,在[Build Phases]项中展开[Link Binary With Libraries],点击[+]按钮:
![](http://testplus.ks3-cn-beijing.ksyun.com/cn/images/docs/crasheye/ios_build_phases.jpg)
将[libz.dylib]与 [libc++.dylib]添加进来:
![](http://testplus.ks3-cn-beijing.ksyun.com/cn/images/docs/crasheye/ios_build_add_files.png)
再为工程添加编译选项:
![](http://testplus.ks3-cn-beijing.ksyun.com/cn/images/docs/crasheye/ios_linker_flags.jpg)
iOS SDK版本2.5.0及以上,已将上传改为https方式,不需再添加NSExceptionDomains或NSAllowsArbitraryLoads字段,2.5.0以下版本需自行添加例外。
初始化SDK
在项目的[AppDelegate.m]源文件中引入头文件:
#import "Crasheye.h"
在application:didFinishLaunchingWithOptions:
方法中初始化SDK,如下:
[Crasheye initWithAppKey:@"Your_AppKey"]
如果需要为你的APP指定渠道信息,那么还可以这样初始化:
[Crasheye initWithAppKey:@"Your_AppKey" withChannel:@"Your_Channel"]
至此,iOS上的SDK接入工作就完成了。在你的Apple设备上启动APP,在Crasheye后台便能实时看到监控数据。
测试
请在真机上调试验证,在Crasheye后台便能实时看到监控数据。
启动您的项目,在Crasheye后台便能实时看到监控数据了!
常用API
设置App版本号
默认读取app的版本信息,也可以用这个接口自己设置。注意:此方法需在Crasheye init前调用。
[Crasheye setAppVersion:(NSString *) appVersion];
设置用户标识
为每一条上报记录设置用户标识,可以方便后期筛选和定位问题,比如开发人员想看到自己手机上报的崩溃信息,就可以采用这种方式:
[Crasheye setUserID:(NSString *) userID];
添加面包屑(打点信息)
您可以在您的代码中添加多个面包屑(打点信息)然后在Crasheye平台上查看面包屑(打点信息)的时间和顺序,这样您就可以监视到您的项目是否按照您的预设跑了!只需要在每个您想监视的地方调用如下API即可:
[Crasheye leaveBreadcrumb:(NSString *) breadcrumb];
添加自定义数据
如果您觉得Crasheye默认捕获的数据还不足以满足您的要求的话,您可以添加自定义数据,只需要调用如下API即可:
[Crasheye addExtraDataWithDic:(NSDictionary *) dic];
主动上报脚本错误
此接口主要是给开发者主动调用,在捕获到异常信息时,如:lua、js等脚本异常,可以通过调用接口上报至服务端。(为了减少重复上报,相同的异常信息在10分钟内只能上报一次)
/*
@param:
errorTitle 错误的标题,由开发人员指定,不可以为空
exception 异常的详细内容 不可以为空
*/
[Crasheye sendScriptExceptionRequestWithTitle:(NSString *) errorTitle exception:(NSString *) exception file:(NSString *) file language:(NSString *) language];
获取设备ID
此接口是用户获取当前手机的设备ID信息,通过此ID信息可以通过页面搜索,找到对应的机器异常信息。
[Crasheye getDeviceID];
设置测试版本
/**
* 设置该版本是否为测试版本
* @param enabled 是否为测试版本(1是启用,0是禁用)
*/
[Crasheye setBeta:(int32_t) enabled];
符号文件上传
1、环境要求
Java SE Runtime Environment 7 或以上
2、准备
a. 符号文件工具
b. dSYM文件(iOS中包含调试信息的文件),其位置如下:
XCode -> 项目工程 -> Products -> XXX.app -> 右键"显示文件夹" -> XXX.app.dSYM
3、上传符号文件
参数说明:-appkey 项目的appkey
[-veresion] 应用版本(可选),默认从符号文件中Contents/info.plist读取
[-platform] 默认值为ios
[-disableUpload] 不上传符号文件
[-dumpsyms] dsym分析程序dump_syms位置,默认指向当前工作目录
符号文件路径
网页上传:
1、运行符号文件工具,具体参数如下:
java -jar CrasheyeiOSSymbol.jar -disableUpload 符号文件路径
2、把生成的.zip包通过网页上传(设置 - 符号文件 - 符号文件上传),并选择对应的应用版本号
工具上传:
3、运行符号文件工具,具体参数如下:
java -jar CrasheyeiOSSymbol.jar -appkey=项目的AppKey [-version=应用版本号] [-platform=ios] 符号文件路径