iOS-Bugly使用

前言

由于前期赶项目,所以在项目中难免多了一些bug,最近项目闲了下来,为了能够快速定位到线上版本bug位置,经过比较之后,决定使用腾讯家的Bugly。
keywords: Bugly、集成Bugly、Bugly使用、腾讯Bugly

登录账号

  1. 浏览器中打开Bugly点我进入Bugly。
  2. 使用QQ或者邮箱登录,如果没有请先注册。

创建程序

  • 新建产品

    点击新建产品


    iOS-Bugly使用_第1张图片
    create.png
  • 实名认证

    如果没有实名认证,请先认证。


    iOS-Bugly使用_第2张图片
    realName.png
  • 创建应用

输入相关信息,点击保存


iOS-Bugly使用_第3张图片
new.png
  • 查看应用

    在我的产品中,可以看到刚才创建的应用,点击设置,获取应用的AppID,AppKey


    iOS-Bugly使用_第4张图片
    productlist.png
iOS-Bugly使用_第5张图片
setting.png

集成Bugly

具体可参考Bugly-iOS官方文档,这里只介绍cocoaPods方式集成

  • 如果未安装cocoaPods,请自行百度/Google
  • 如果更新cocoaPods,请参考我的另外一篇文章cocoapods更新
  • 如果已安装cocoaPods
    • 在podfile文件中加入
    pod 'Bugly'
    
    • 控制台查询bugly版本
    pod search Bugly  //如果和官方最新版不一致,请执行下面的代码
    
pod update //更新pod资源库,如果一致,可执行 pod --verbose --no-repo-update
  • 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 = 5; //卡顿监控判断间隔,单位为秒
//    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];
}

如果实现了BuglyDelegate

#pragma mark - BuglyDelegate
//此方法返回的数据,可在bugly平台中异常上报,具体异常信息的跟踪数据附件信息中的crash_attach.log中查看
-(NSString *)attachmentForException:(NSException *)exception{
//    [Bugly reportException:exception];
    return [NSString stringWithFormat:@"exceptionInfo:\nname:%@\nreason:%@",exception.name,exception.reason];
}

到这里,Bugly就已经集成成功了,如果程序再出现bug,就可以在管理平台上看到,下面是我测试数据

iOS-Bugly使用_第6张图片
testEx.png

点击进入其中一个异常,可以发现具体的异常问题,和出错类名及方法名,向下翻还可以看到出错手机信息以及堆栈信息。
iOS-Bugly使用_第7张图片
ex-des.png

细心的朋友可能会发现,这里只看到了堆栈信息,但是具体错在哪一行,我们并不知道,原因上面写说的很清楚,因为我们没有配置该版本的符号表文件,点击配置,你可以选择 下载符号表工具,或者 查看自动上传符号文件
iOS-Bugly使用_第8张图片
test2.png

iOS-Bugly使用_第9张图片
test3.png
1. 自动上传符号表
  1. 点击下载符号表工具,解压获得
  • buglySymboliOS.jar
  • dSYMUpload.sh
  1. 将解压后的文件,放到指定位置
iOS-Bugly使用_第10张图片
jar.png

iOS-Bugly使用_第11张图片
test5.png
  1. 配置脚本信息
    打开dSYMUpload.sh,配置好你的Bugly的AppID, APPKey, 以及应用的Bundle id,复制全部


    iOS-Bugly使用_第12张图片
    sh.png
  2. 打开Xcode》Build Phases,添加运行脚本


    iOS-Bugly使用_第13张图片
    test6.png
  3. 查看自己电脑是否已经安装Java环境,控制台中输入

iOS-Bugly使用_第14张图片
java_install.png
  • 如果可以获取到Java版本,则配置到此结束。
  • 如果出现No Java,说明电脑没有安装Java环境,请下载java环境。安装成功后,再进行测试,就可以看到详细信息了。
iOS-Bugly使用_第15张图片
test7.png

自此,大功告成,现在可以自己再写个数组越界的bug,再次测试,就可以发现已经可以确定Bug行数了。

2. 当然你可以手动上传符号表

请参考符号表获取方法。

你可能感兴趣的:(iOS-Bugly使用)