iOS Bugly接入

2019-11-04  本文已影响0人  最强的小强

项目需求:项目上线后,为了能够快速定位到线上版本bug位置,决定导入使用一下Bugly。
解决方案:使用Bugly解决。

一、官网注册Bugly,获取APP IDAPP Key
二、 集成Bugly

推荐 cocoapods,pod 'Bugly

三、Appdelegate中代码集成
//Bugly
- (void)configureBugly {
    BuglyConfig *config = [[BuglyConfig alloc] init];
    config.unexpectedTerminatingDetectionEnable = YES; //非正常退出事件记录开关,默认关闭
    config.reportLogLevel = BuglyLogLevelWarn; //报告级别
    //config.deviceIdentifier = [UIDevice currentDevice].identifierForVendor.UUIDString; //设备标识
    config.blockMonitorEnable = YES; //开启卡顿监控
    config.blockMonitorTimeout = 1; //卡顿监控判断间隔,单位为秒
    config.delegate = self;
#if DEBUG
    config.debugMode = YES; //SDK Debug信息开关, 默认关闭
    config.channel = @"debug";
#else
    config.channel = @"release";
#endif
    [Bugly startWithAppId:TY_BUGLY_APP_ID
#if DEBUG
        developmentDevice:YES
#endif
        config:config];
}
#pragma mark - BuglyDelegate
//此方法返回的数据,可在bugly平台中异常上报,具体异常信息的跟踪数据附件信息中的crash_attach.log中查看
- (NSString *)attachmentForException:(NSException *)exception{
    return [NSString stringWithFormat:@"exceptionInfo:\nname:%@\nreason:%@",exception.name,exception.reason];
}
四、自动导入符号表

此时,Bugly已经接入,在程序出现问题的时候可以在Bugly官网产品里面查看问题定位,但是要精确定位到崩溃的方法和崩溃代码的具体行数,就要导入符号表了.

  1. 首先下载自动配置符号表 符号表下载
    下载的内容里面包括:
    buglySymboliOS.jar
    dSYMUpload.sh
  2. 接着安装JAVA环境 (自己在网上找了一个下载地址,也可到JDK官网下载) JDK1.8下载

Tips:上传符号表为什么需要java环境?
因为符号表提取工具依赖于java环境,符号表工具只提取必要的信息,可以大幅度减少需要上传的文件体积

  1. 将下载的文件buglySymboliOS.jar放在用户目录的bin文件下(如果没有请自行创建)
    图1_bin文件的位置.png
  2. 编辑dSYMUpload.sh文件,修改其中的APP ID , APP Key, Bundle identifier
    图2_要修改的信息配置.png
  3. 复制粘贴dSYMUpload.sh文件的内容在Xcode中导入运行就可以啦.
    Xcode ->Targets->Builds Phases
    图3_运行脚本位置.png
  4. 效果图如下
举个栗子:我的报错信息是 数组越界,代码定位在类QuestionChoiceViewsetQuestionModel方法中,具体代码行数是45 行.
图4_具体效果图.png
五、写在最后 (遇到的问题) :

Q:小编想要在Debug环境下测试Bugly是否会正常上报信息?
A:

  1. 首先我们要知道Bugly默认在release环境下上报信息,在Debug模式下不上传;如果想修改,就在图2的dSYMUpload.sh文件里面修改Debug模式下正常上传的字段UPLOAD_DEBUG_SYMBOLS=1
  2. 修改Xcode->Targets->Build Settings->Debug information Format的Dug为 DWARFwithdSYM File
    如下图所示:
    图5_修改debug模式.png
上一篇 下一篇

猜你喜欢

热点阅读