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的编译执行脚本