请为需要监测的App设置一个易于识别的应用名称,该App名称将出现在App列表和相关的报表中来代表对应的App。
App名称可以使用字母数字和中文,最长32个字符。设置App名称时,尽量不要设置重复的App名称,以免给自己造成不必要的麻烦。
您的App名称可以在设置选项中随时修改
听云App iOS SDK支持iOS 6.0以上的iOS系统,并且支持CocoaPods。
下载听云App iOS SDK:
2.1.1、使用听云App iOS SDK
解压已经下载的SDK包,在解压后的文件夹中,选择“tingyunApp.framework”文件,并将其拖动到需要进行监测的iOS App的Xcode项目中
注:从2.1.4 版本开始,听云App iOS framework从“libNBSAppAgent.framework”更名为“tingyunApp.framework”
i. 在Xcode中,选择Project Navigator窗口,将拖动的文件夹图标放到“HelloWorld”文件夹组下。
ii. 当Xcode弹出提示时,选择“Copy items into destination group’s folder”和“Create folder references for any added folders”选项,并确认。
iii. 在待监测的iOS App项目的链接设置中增加以下4个库,在Xcode的Project Navigator窗口中选中待监测App项目:
a) 在Target中选中对应的App;
b) 切换到“Build Phases”设置页面;
c) 展开“Link Binary With Libraries”设置项,点击“+”号进入增加库的窗口
CoreTelephony.framework
Security.framework
SystemConfiguration.framework
libz.tbd(注:Xcode7之前请添加libz.dylib)
iv. 增加四个类库
2.2.1、CocoaPods的使用
1) 在当前项目工程根目录的Podfile文件中添加以下内容
pod "tingyunApp"
2) 在当前项目工程根目录下输入如下命令:
pod install
3) 安装成功后,通过以下命令行启动Xcode
open App.xcworkspace
1) 在待监测App的pch文件中引入听云App探针的头文件:
#import <tingyunApp/NBSAppAgent.h>
注:Xcode 6之后,创建工程时不会自动创建pch文件,需要自己创建,参考附录1
// PrefixHeader.pch
#ifdef __OBJC__
#import <tingyunApp/NBSAppAgent.h>
//...
#endif
2) 在嵌码项目工程Supporting Files/main.m文件的main函数中添加以下代码:
[NBSAppAgent startWithAppID:@"AppKey"];
如:
int main(int argc, char * argv[]) {
@autoreleasepool {
[NBSAppAgent startWithAppID:@"AppKey "];
return UIApplicationMain(argc, argv, nil,
NSStringFromClass([AppDelegate class]));
}
}
运行嵌码完成后的项目工程,连接电脑使用Devices查看log日
出现如下log表示嵌码成功:
NBSAppAgent “TingYun_Version”
---->start!
Success to connect to NBSSERVER
如以上步骤操作正确,听云App iOS SDK探针就已经成功部署到待监测的App中了,在模拟器或真机中运行待检测App,等待3~5分钟,即可在听云App报表中看到被监测App的性能数据。
为了更好的帮助用户解析崩溃信息,我们提供了符号化机制来帮助用户快速精准的定位崩溃发生位置。当您使用符号化制时,您需要上传当前版本的“dSYM”文件到听云服务器。
i. 打开已嵌码项目工程,点击菜单栏中的“Window”选择“Organizer”
ii. 选择“Archives”,找到目标工程右击选择“Show in Finder”进入文件目录
iii. 右击“.xcarchive”文件,选择“显示包内容”
iv. 选择对应的“.app.dSYM”文件,如:“HelloWorld.app.dSYM”,右击“显示包内容”
v. 找到项目的符号表文件,这里为“HelloWorld”
注:上图标注部分为符号表文件,上传时请上传该文件而不是xxx.app.dSYM这个目录
6.2.1、通过Xcode + sh脚本上传dSYM文件
(1)将解压后SDK包中tingyun.sh的内容贴入到上图中第6步的位置。
(2)配置好对应的AUTH_KEY和APP_KEY。
6.2.2、通过报表手动上传dSYM文件
(1)登陆听云报表,在App概览中选择嵌对应的App名称,进入App后选择左侧菜单栏中的“崩溃”按钮:
(2)在右侧“崩溃历史记录列表”中选择并点击“dSYM / Mapping 文件管理”,如下图所示:
(3)在弹出窗口中选择上传平台类型,如:“iOS”。选择对应的应用版本号,并点击右侧上传按钮,手动上传符号表。如下图所示:
6.2.3、命令行上传符号表
(1)打开终端,进入“HelloWorld.app.dSYM”目录(目录位置见方法1的描述),输入如下命令:
curl -k -F upload=@HelloWorld
https://report.tingyun.com/symbol/authkey/AUTH_KEY/appkey/APP_KEY
(2)命令行参数配置:
HelloWorld =符号表名称
AUTH_KEY: 听云API账号授权Key,由报表系统生成(附录1)
APP_KEY: 听云App授权Key(附录2)
(3)上传符号表
配置完成后即可通过命令行上传符号表到听云服务器,出现Success说明上传成功
{
"status" : "success",
"msg" : "success"
}
6.2.4、配置用户自定义附加信息
新版Crash提供用户自定义附加信息接口,用户可以自定义附加信息,应用发生Crash时上传到报表服务器。用户可以再初始化之后任意位置配置该接口。setCustomerData最大可配置10个参数,每个“Value”最多可上传100个字节。
用户自定义附加接口如下:
[NBSAppAgent setCustomerData:@"helloworld" forKey:@"name"];
对于Xcode6.0之后新建工程不再包含.pch文件的情况,可以手动创建一个pch文件,创建步骤:
i. 新建pch文件:打开Xcode,依次选择File→New→File(或者⌘N)。
ii. 在弹出的对话框中选择Other,然后选择PCH File。
iii. 点击Next,然后输入“pch”的文件名,格式一般为“工程名-Prefix”。
选中工程→TARGETS→Build Settings,找到Apple LLVM 6.0-Language,其中有一项Prefix Header,双击它,然后输入“工程名/pch文件名”,到这里pch文件就设置好了。
附录:
i. 登陆报表,选择用户名称,点击修改授权码
ii. 选择“当前授权码” 复制到上传URL中
i. 登陆报表,在App概览中选择嵌对应的App名称,如:iOS_SDK。点击左侧配置按钮,选择“修改设置”
ii. 进入“修改配置”后,找到“安装SDK”选择“App Key”复制到上传URL中