【AGC】集成华为AGC崩溃服务实用教程
简介
AppGallery Connect(简称AGC)崩溃服务提供了轻量级崩溃分析服务,集成Crash SDK,可以实现零代码快速集成,您的应用能够在崩溃时自动收集崩溃报告,帮助您了解应用版本质量、对崩溃性问题进行快速跟踪定位、评估崩溃问题的影响范围等。
开通服务和集成SDK
1、登录AppGallery Connect,点击“我的项目”,在项目的应用列表中选择需要开通崩溃的应用。
2、在导航选择“质量 > 崩溃”。如果是首次使用崩溃服务,请点击“启动分析服务”开通服务。
3、选择常规页签下的“应用”区域,下载agconnect-services.plist配置文件。
4、打开命令行窗口,导航至Xcode项目所在的位置,创建Podfile文件。如果已经存在,可跳过本步骤。
cd project-directory
pod init
5、编辑Podfile文件,增加pod依赖pod 'AGConnectCrash'。
target 'AGC-Crash-1' do
pod 'AGConnectCrash'
end
6、执行 pod install,然后打开xcworkspace文件查看该项目。
pod install
安装成功效果如下图。
界面设计
本次Codelab中您可以在您的iOS工程中创建一个布局页面,参照下图进行UI设计,新增一个按钮触发崩溃。
功能开发
1、在应用的AppDelegate类中引入AGConnectCore库,并在didFinishLaunchingWithOptions方法里调用AGCInstance.startUp进行初始化。
import AGConnectCore
func application(_ application: UIApplication, didFinishLaunchingWithOptions launchOptions: [UIApplication.LaunchOptionsKey: Any]?) -> Bool {
AGCInstance.startUp()
return true
}
2、调用制造崩溃的方法makeCrash。
@objc func makeCrash() {
AGCCrash.sharedInstance().testIt()
}
打包测试
- 在Xcode上点击运行按钮,在手机或模拟器上运行应用。
- 崩溃收集功能在Xcode调试状态下不会开启,因此您在测试应用程序的崩溃收集功能时,需要先停止Xcode调试,再打开应用程序点击“Make Crash”。
- 在发生崩溃后,确保网络连接正常,重新打开应用,在AGC中查看对应的崩溃信息。
崩溃报告查看
- 登录AppGallery Connect,点击“我的项目”,在应用列表中选择您的应用。
- 在崩溃服务页面中,点击“统计”页签,查看您应用的崩溃统计信息。
- 确认有崩溃信息上报后,您可以点击“问题”页签,找到您应用的崩溃问题,如下“NSRangeException”即为本次测试崩溃时制造的崩溃问题。
- 点击崩溃问题,可以进入问题详情页面,在“堆栈”信息中,您可以大致了解发生崩溃的原因,以帮助您对崩溃进行分析。
恭喜您
祝贺您,您已经成功地构建了您的第一个集成AGC崩溃服务的应用程序,并学到了如何在AGC控制台对崩溃信息和自定义报告进行查看和分析。您也可以制造不同类型的崩溃,在AGC控制台上查看崩溃信息。
参考文档
欲了解更多更全技术文章,欢迎访问https://developer.huawei.com/consumer/cn/forum/?ha_source=zzh
【AGC】集成华为AGC崩溃服务实用教程的更多相关文章
- iOS平台 | 快速集成华为AGC认证服务
介绍 如何让用户根据已有的账号来进行登录注册呢?在应用中集成华为AGC认证服务SDK来轻松快速地实现这个功能. 本篇内容根据官网文档指导集成过程总结完成,关于集成步骤,官网的资料写的有点多,现在我总结 ...
- 如何在 Flutter 中集成华为云函数服务
介绍 云函数是一项 Serverless 计算服务,提供 FaaS(Function as a Service)能力,可以帮助开发者大幅简化应用开发与运维相关事务,降低应用功能的实现门槛,快速构建业务 ...
- spring cloud 2.x版本 Ribbon服务发现教程(内含集成Hystrix熔断机制)
本文采用Spring cloud本文为2.1.8RELEASE,version=Greenwich.SR3 前言 本文基于前两篇文章eureka-server和eureka-client的实现. 参考 ...
- spring cloud 2.x版本 Feign服务发现教程(内含集成Hystrix熔断机制)
前言 本文采用Spring cloud本文为2.1.8RELEASE,version=Greenwich.SR3 本文基于前两篇文章eureka-server和eureka-client的实现. 参考 ...
- 超简单集成华为 HMS MLKit 机器学习服务:银行卡识别 SDK,一键实现银行卡绑定
前言 小编前面几期文章分别给大家介绍了使用 HMS ML Kit SDK 实现微笑抓拍.证件照 DIY.拍照翻译的功能开发(链接见文章末尾),本次小编给大家带来的是使用 HMS 机器学习服务(ML K ...
- Taurus.MVC 微服务框架 入门开发教程:项目集成:1、服务端:注册中心、网关(提供可运行程序下载)。
系列目录: 本系列分为项目集成.项目部署.架构演进三个方向,后续会根据情况调整文章目录. 本系列第一篇:Taurus.MVC V3.0.3 微服务开源框架发布:让.NET 架构在大并发的演进过程更简单 ...
- js模版引擎handlebars.js实用教程
js模版引擎handlebars.js实用教程 阅读本文需要了解基本的Handlebars.js概念,本文并不是Handlebars.js基础教程,而是注重于实际应用,为读者阐述使用过程中可能会遇到的 ...
- spring cloud微服务快速教程之(七) Spring Cloud Alibaba--nacos(一)、服务注册发现
0.前言 什么是Spring Cloud Alibaba? Spring Cloud Alibaba 是阿里开源的,致力于提供微服务开发的一站式解决方案.此项目包含开发分布式应用微服务的必需组件,方便 ...
- SpringBoot系列之RabbitMQ使用实用教程
SpringBoot系列之RabbitMQ使用实用教程 @ 目录 1. 消息队列概述 1.1 MQ的概述 1.2 MQ目的地形式 2. 消息队列实现方式 2.1 常见MQ框架 2.2 MQ实现方式 3 ...
随机推荐
- C++:接送旅客
接送旅客 时间限制:1.00sec 内存限制:128MB 题目描述: 现在,你是一家酒店的员工,你需要帮助这家酒店的旅客运送行李离开酒店.现在,你送顶层开始往下移动,为了减少电梯移动的距 ...
- 基于.NetCore开发博客项目 StarBlog - (10) 图片瀑布流
系列文章 基于.NetCore开发博客项目 StarBlog - (1) 为什么需要自己写一个博客? 基于.NetCore开发博客项目 StarBlog - (2) 环境准备和创建项目 基于.NetC ...
- redis客户端打不开 提示cannot connect to server dev.check log for details
我当前状况是redis客户端打不开,之前一直好好的(虽然作为一个程序员我不配说这句话,哈哈),但是我排查了我觉得所有的可能性,我用的阿里云的redis(还没有到购买到期时间),然后我就关闭了防火墙,你 ...
- 苹果宣布 2022 年 Apple 设计大奖得主
Apple 今日举办了年度 Apple 设计大奖颁奖仪式,表彰 12 款出类拔萃的 app 与游戏佳作.今年的获奖者包括来自全球各地的开发者.他们通过 app 呈现锐意创新.别出心裁的优美设计体验,以 ...
- 2021蓝桥杯省赛C++A组试题E 回路计数 状态压缩DP详细版
2021蓝桥杯省赛C++A组试题E 回路计数 状态压缩DP 题目描述 蓝桥学院由21栋教学楼组成,教学楼编号1到21.对于两栋教学楼a和b,当a和b互质时,a和b之间有一条走廊直接相连,两个方向皆可通 ...
- Java集合框架(四)-HashMap
1.HashMap特点 存放的元素都是键值对(key-value),key是唯一的,value是可以重复的 存放的元素也不保证添加的顺序,即是无序的 存放的元素的键可以为null,但是只能有一个key ...
- sharepoint 配置失败,已引发类型为System.ArgumentException的异常。其他异常信息:domainName参数不支持指定的值。
解决方法:在域控制器中加入sharepoint计算机,设置为administrators组中
- SAP Table control
REPORT RSDEMO02. * demostrates the use of table controls * unsolved problems: attributes left_col an ...
- leetcode题解#3:无重复字符的最长子串
leetcode题解:无重复字符的最长子串 题目 给定一个字符串,请你找出其中不含有重复字符的 最长子串 的长度. 示例 1: 输入: s = "abcabcbb"输出: 3 解释 ...
- Map集合中的同一键值key重复赋值
前言: 验证:对Map集合中的同一键值key重复赋值? 结果:对Map集合中的同一键值key重复赋值会覆盖之前的结果. 验证如下: Map<String, Object> map = ne ...