1.Bugly的集成很简单,直接一个pod就可以搞定
pod 'Bugly'
2.在官网上注册账号
3.初始化SDK
导入头文件
在工程的AppDelegate.m
文件导入头文件
#import <Bugly/Bugly.h> 如果是Swift工程,请在对应bridging-header.h中导入
3.1 Objective-C
- (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions {
[Bugly startWithAppId:@"此处替换为你的AppId"];
return YES;
}
3.2 Swift
func application(application: UIApplication, didFinishLaunchingWithOptions launchOptions: [NSObject: AnyObject]?) -> Bool {
Bugly.startWithAppId("此处替换为你的AppId")
return true
}
4.启动程序,模拟一个数组越界的bug
func arrayTest() {
//过滤指定的元素数据
var showArr = [PersonModel]()
for i in 1...9{
let person = PersonModel(userId: i, name: "张三", sex: i % 2, age: 10+i)
showArr.append(person)
}
// showArr = showArr.filter { $0.userId != 3 }
print(showArr[10])
}
5.大约一分钟左右就可以在后台看到奔溃信息
但是具体的奔溃信息你还是看不到,我们还要上传符号表,对app发生crash的程序堆栈进行解析和还原
还原前的堆栈
还原后的堆栈
直接就可以看到奔溃的方法和文件名
6.Bugly提供了自动和手动的两种方法配置IOS符号表,地址如下:自动配置符号表工具包,选择上传的方式并配置xcode的编译执行脚本