博客> iOS-Bugly使用
iOS-Bugly使用
2019-12-13 07:29 评论:0 阅读:491 AngelMrKaye
ios cocoapods bugly

查看原文

前言

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

登录账号

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

创建程序

  • 新建产品

    点击新建产品 create.png

  • 实名认证

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

  • 创建应用

    输入相关信息,点击保存 new.png

  • 查看应用

    在我的产品中,可以看到刚才创建的应用,点击设置,获取应用的AppID,AppKey productlist.png 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,就可以在管理平台上看到,下面是我测试数据 testEx.png

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

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

test3.png

1. 自动上传符号表
  1. 点击下载符号表工具,解压获得

    • buglySymboliOS.jar
    • dSYMUpload.sh
  2. 将解压后的文件,放到指定位置

    jar.png test5.png

  3. 配置脚本信息 打开dSYMUpload.sh,配置好你的Bugly的AppID, APPKey, 以及应用的Bundle id,复制全部 sh.png

  4. 打开Xcode》Build Phases,添加运行脚本 test6.png

  5. 查看自己电脑是否已经安装Java环境,控制台中输入

    java_install.png

    • 如果可以获取到Java版本,则配置到此结束。
    • 如果出现No Java,说明电脑没有安装Java环境,请下载java环境。安装成功后,再进行测试,就可以看到详细信息了。

test7.png

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

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

请参考符号表获取方法

收藏
0
sina weixin mail 回到顶部