iOS Bugly集成

作者: 朱朱001 | 来源:发表于2022-04-12 17:21 被阅读0次

    前言

    引用腾讯Bugly首页文字:“一种愉悦的开发方式”——腾讯Bugly,为移动开发者提供专业的异常上报和运营统计,帮助开发者快速发现并解决异常,同时掌握产品运营动态,及时跟进用户反馈。

    一、常规集成

    1.登录bugly 官网创建产品

    获取应用的App ID 和 App Key。

    2.CocoaPods集成

    pod 'Bugly'
    

    3.初始化SDK

    AppDelegate中导入

    #import <Bugly/Bugly.h>
    

    如果是Swift工程,请在对应bridging-header.h中导入
    在工程AppDelegate.m的application:didFinishLaunchingWithOptions:方法中初始化:

    - (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions { 
        [Bugly startWithAppId:@"此处替换为你的AppId"]; 
        return YES; 
    }
    
    func application(application: UIApplication, didFinishLaunchingWithOptions launchOptions: [NSObject: AnyObject]?) -> Bool { 
        Bugly.startWithAppId("此处替换为你的AppId”) 
        return true
    }
    

    至此集成完毕。但是很多bug并不能定位具体的类和方法。我们需要配置符号表。

    二、配置符号表

    1.什么是符号表

    符号表是内存地址与函数名、文件名、行号的映射表。符号表元素如下所示:
    <起始地址> <结束地址> <函数> [<文件名:行号>]

    2.为什么要配置符号表

    为了能快速并准确地定位用户APP发生Crash的代码位置,Bugly使用符号表对APP发生Crash的程序堆栈进行解析和还原。
    举一个例子:


    为什么要配置符号表.png

    3.具体步骤

    (1)下载符号表工具
    符号表工具目录.png

    内部包含“符号表上传工具使用说明”。

    (2)获取dSYM文件

    在AppConnect里找到构建的版本,下载dYSM。


    下载dYSM.png
    (3)生成和上传

    把下载的dSYM文件和符号表工具放在同一文件夹中(buglyqq-upload-symbol ),执行以下操作

    cd /Users/luomeng/Desktop/buglyqq-upload-symbol 
    java -jar buglyqq-upload-symbol.jar -appid <App ID> -appkey <App Key> -bundleid <bundle id> -version <版本号> -platform IOS -inputSymbol <原始符号表dsym所在文件夹目录地址>
    

    注意:运行需要java运行环境,且version 必须为1.8,不然会报错。

    (4)下面是 crash 的堆栈解析截图
    解析图.png

    相关文章

      网友评论

        本文标题:iOS Bugly集成

        本文链接:https://www.haomeiwen.com/subject/tjrnsrtx.html