• 首页 首页 icon
  • 工具库 工具库 icon
    • IP查询 IP查询 icon
  • 内容库 内容库 icon
    • 快讯库 快讯库 icon
    • 精品库 精品库 icon
    • 问答库 问答库 icon
  • 更多 更多 icon
    • 服务条款 服务条款 icon

AGC新版鸿蒙崩溃SDK集成使用方法

武飞扬头像
华为开发者论坛
帮助3

【背景】

我们知道AGC的Crash SDK都是需要强制集成华为分析SDK的,在使用时的崩溃数据上报都要依靠分析服务来完成,这就容易受到限制,有时出现无数据的情况就要依次排查崩溃SDK与分析SDK,比较麻烦。而就在不久前,鸿蒙崩溃的SDK做了全面更新,上报信息不再依赖华为分析服务SDK,并且后台数据展示也做了更新。这可以让项目更加简洁,缩小了应用的占用空间,出现数据问题排查也更加方便了。不过更新后的SDK集成使用方法也与旧版本不一样了,接下来将介绍新版鸿蒙崩溃SDK的集成使用方法。

【开发准备】

  1. 登录AppGallery Connect,点击“我的项目”。在项目列表中找到您的项目,在项目下的应用列表中选择您需要启用崩溃服务的应用。选择“质量 > 崩溃”,进入崩溃服务页面,点击“立即开通”。

  2. 点击“项目设置”中“应用”栏下的“agconnect-services.json”,将“agconnect-services.json”文件拷贝到项目entry模块的目录下。

  3. 打开entry模块下的build.gradle文件,添加如下代码集成Crash SDK,目前SDK依赖仅需要一行代码就能实现了。

    1.  
      dependencies {
    2.  
      ...
    3.  
      implementation 'com.huawei.agconnect:agconnect-crash-harmony:1.1.0.300'
    4.  
      ...
    5.  
      }

【实现方法】

旧版本的鸿蒙SDK调用类名已从AGConnectCrash更换为APMCrash了,需要注意更换。

  1. 您可以调用APMCrash.testJavaException方法,构造一次崩溃。

    1.  
      Button btn_crash = (Button) findComponentById(ResourceTable.Id_Make_Crash);
    2.  
      btn_crash.setClickedListener(new Component.ClickedListener() {
    3.  
      @Override
    4.  
      public void onClick(Component component) {
    5.  
      APMCrash.getInstance().testJavaException(true);
    6.  
      }
    7.  
      });
  2. 调用APMCrash.recordException方法构造一次非严重异常事件。

    1.  
      Button btn_exception = (Button) findComponentById(ResourceTable.Id_Make_Exception);
    2.  
      btn_exception.setClickedListener(new Component.ClickedListener() {
    3.  
      @Override
    4.  
      public void onClick(Component component) {
    5.  
      try{
    6.  
      throw new Exception();
    7.  
      }catch (Exception e){
    8.  
      APMCrash.getInstance().recordException(e);
    9.  
      }
    10.  
      }
    11.  
      });
  3. 调用APMCrash.setCustomLogInfo(String text)自定义日志,调用APMCrash.setCustomKeyValue自定义键值对。

    1.  
      Button btn_CustomReport = (Button) findComponentById(ResourceTable.Id_Custom_Report);
    2.  
      btn_CustomReport.setClickedListener(new Component.ClickedListener() {
    3.  
      @Override
    4.  
      public void onClick(Component component) {
    5.  
      APMCrash.getInstance().setUserId("testuser");
    6.  
      APMCrash.getInstance().setCustomLogInfo(HiLog.DEBUG,"set debug log.");
    7.  
      APMCrash.getInstance().setCustomLogInfo(HiLog.INFO,"set info log.");
    8.  
      APMCrash.getInstance().setCustomLogInfo(HiLog.WARN,"set warning log.");
    9.  
      APMCrash.getInstance().setCustomLogInfo(HiLog.ERROR,"set error log.");
    10.  
      APMCrash.getInstance().setCustomKeyValue("stringKey", "Hello world");
    11.  
      APMCrash.getInstance().setCustomKeyValue("booleanKey", false);
    12.  
      APMCrash.getInstance().setCustomKeyValue("doubleKey", 1.1);
    13.  
      APMCrash.getInstance().setCustomKeyValue("floatKey", 1.1f);
    14.  
      APMCrash.getInstance().setCustomKeyValue("intKey", 0);
    15.  
      APMCrash.getInstance().setCustomKeyValue("longKey", 11L);
    16.  
      } });
    学新通

【数据展示】

现在鸿蒙崩溃SDK后台数据展示界面也与现在的Android应用不同了,做出了更细致的更新,下面向大家展示上报的崩溃数据界面。

1、数据概览界面

学新通

2、问题详情与堆栈信息界面

学新通

学新通

3、自定义报告界面

学新通

学新通

【结论】

参考文档:文档中心 SDK版本更新说明

 欲了解更多更全技术文章,欢迎访问https://developer.huawei.com/consumer/cn/forum/?ha_source=zzh

这篇好文章是转载于:学新通技术网

  • 版权申明: 本站部分内容来自互联网,仅供学习及演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系,请提供相关证据及您的身份证明,我们将在收到邮件后48小时内删除。
  • 本站站名: 学新通技术网
  • 本文地址: /boutique/detail/tanhibbabi
系列文章
更多 icon
同类精品
更多 icon
继续加载