写点什么

基于 HUAWEI AppGallery Connect 开发了一款 App,我得出了这几点结论!

开发者技术前线

  • 2020-08-14
  • 本文字数:2326 字

    阅读完需:约 8 分钟

基于HUAWEI AppGallery Connect开发了一款App,我得出了这几点结论!

1 背景介绍

最近,笔者开发了一款 App,深刻体会到打造 App 的极致体验的重要性,这对 App 的启动速度、页面秒开、稳定性都提出了严峻的挑战。那么,如何去验证 App 体验和性能达到了标准? 目前业内主要借助质量类服务检测。质量类服务主要提供客户端的崩溃、行为日志采集、启动速度、页面加载耗时、以及大盘性能监控能力。笔者发现,华为应用市场 AppGallery Connect(简称 AG Connect)就提供了此类质量服务,所以决定尝试一下。

2 华为应用市场 AG Connect

目前市面上质量类平台主要有:华为应用市场 AG Connect、友盟、TalkingData 三款产品。这三款服务都提供了对 App 崩溃采集和质量统计服务。


首先之前有过友盟、TalkingData 使用项目经历,我优先考虑华为应用市场 AG Connect。


其次考虑到华为应用市场的 App 数据统计比较精准,且华为应用市场 AG Connect 严格遵从 GDPR,即作为数据处理者不会获取和查看开发者应用的数据。因此符合我们对 App 极致体验的诉求,选择对 AG Connect 做下测评分析。


称 AG Connect 从构建、质量、增长、华为云方面给开发者提供了多个开发服务,主要有构建应用基础能力、提升应用质量、提高分发效率、和拉新促活用户。


一个 AG Connect 服务的基本开发流程如下:


1、准备开发环境


2、创建 AG Connect 项目


3、在项目中添加应用


4、设置数据存储位置


5、集成 AG ConnectSDK


6、开发应用


7、接入 AG Connect 服务


8、接下来我们来测评下 AG Connect 具体能力的情况。

3 测试环境搭建

3.1 测试设备

测试设备:MAC+ 测试 Android 手机 1 部 + USB 1 条

3.2 环境搭建

1、MAC 安装“Android Studio”,并升级至最新版本。


2、为保证兼容性,要求最低兼容版本:Android 4.2 (API level 21) 或者 JDK 1.8 及以上版本。


3、集成 AG Connect SDK。


AndroidStudio 开发环境


1、添加 添加 APM SDK 和 Crash SDK 依赖到应用级 gradle 文件中(通常在 app/build.gradle)。



2、在 APP 模块(应用级)的混淆配置中添加以下排除项:



3、如果您使用了 AndResGuard,需要在混淆配置文件中加入 AndResGuard 允许清单:



4、如果您的应用使用的是 AndroidX 类库,需要在 gradle.properties 中增加如下配置,APM SDK 将自动适配 AndroidX:



5、集成 APM 插件:


1)在 APP 模块(应用级)的 Gradle 文件(通常是 app/build.gradle)中应用 APM 插件:



2)在根级(项目级)Gradle 文件中添加 APM 插件:



6、新建应用:


登录华为应用市场 AppGallery Connect 网站,选择添加“我的项目”。在我的项目页面点击“添加项目”,新建应用

4 测试应用开发

4.1 客户端测试应用开发

新建一个 APP 工程,包含两个页面,工程目录如下:



为了检测崩溃,第一个页面加入了 crash 测试按钮


5 测试 CRASH

5.1 Crash 模拟测试

为了测试是否统计 Crash 能力,我们通过模拟了一个 NPE,来查看是否正常上报。



在按钮添加一条 crash 事件,代码如上。

5.2 Crash 模拟结论

登录后台查看数据:



我们可以看到,本次崩溃日志已被记录。



分析报告看到:日志信息包含了发生时间、异常类型、用户、崩溃数量、崩溃率。此次测试成功,并且包含信息全面,可根据时间、异常类型、用户、崩溃数量、崩溃率多维度去查询。


华为 AG Connect 确实能完成对 App 崩溃率的检测,并能清晰提供数据支撑。

6 测试性能

6.1 App 启动时长

手动启动 App5 次,记录启动时长。测试结果如下:



启动时长中位为 436ms。阈值为 5000ms,华为 AG Connect 确页也能统计 APP 启动耗时。

6.2 页面渲染时长

我们点击跳转按钮,打开第二个页面,重复 5 次。测试结果如下:



从上图可以看出,我们记录了 5 个样本,具体里面有什么关键信息,是否数据提供? 点击查看详情:



由于只有一个测试版本,因此版分布显示为 1.0,页面缓慢帧占比为 40%。此外我们还可以产看前台停留时长、后台时长等数据,此次为人为手动测试,只看是否存在数据,发现数据着正常,因此我们不做分析。华为应用市场 AG Connect 能正确统计 APP 页面加载时长、用户停留时长等数据,是一个不错的 App 性能统计服务类产品。

7 结论

我们本着对 APP 极致体验的方向出发,采用启动速度,秒开,稳定性,页面留存页面帧率,网络延时和成功率等指标作为支撑, 通过华为 AG Connect 的能力来验证我们的 App 以上几个指标的数据,由于篇幅关系,本次测评也主要从崩溃,性能两个关键功能做了测试。

7.1 竞品效果对比

本人之前有过其他两款产品友盟和 talkingdata 的项目经验,综合本次使用情况,针对三款产品对比如下:



可以看出华为应用市场 AG Connect 在启动次数、渠道统计、生态服务等方面表现出优势。本次的测试结果符合我们的预期,基本上满足了我们的诉求点,从 App 启动速度、页面加载时长,页面帧率、崩溃、到网络延时方面,都有明确的数据和可视化后台,从而辅助开发者检测自己 App 的性能。通过以上性能管理能力,我们也能去开发和维护一个优秀,满足用户极致体验的 App。

7.2 华为应用市场 AG Connect 的特点

最后本次测评,得出华为应用市场 AG Connect 的特点:


1、严格遵从 gdpr 的,作为数据处理者不会获取和查看开发者应用的数据;


2、崩溃统计精确、性能管理能力体验优良、可视化后台稳定;


3、且目前大部分能力是免费的,适合开发者使用;


4、生态配套丰富,包含了应用市场、推送服务、云部署、云测试云储存、云托管、设备唯一识别、应用内分发等优秀服务。


华为应用市场 AppGallery Connect 致力于为应用的创意、开发、分发、运营、经营各环节提供一站式服务,构建全场景智慧化的应用生态体验。华为应用市场 AppGallery Connect 深度整合华为内部各项优质服务,将华为在全球化、质量、安全、工程管理等领域长期积累的能力开放给开发者,大幅降低应用开发与运维难度,提高版本质量,开放分发和运营服务,帮助开发者获得用户并实现收入的规模增长。


2020-08-14 17:192800

评论

发布
暂无评论
发现更多内容

面试被问Tomcat整体架构设计,深入浅出Java开发

Java 程序员 后端

【Vuex 源码学习】第四篇 - Vuex 中 Getters 的实现

Brave

源码 vuex 9月日更

(AL智博会)2021南京国际人工智能主题展

南京专业智博会

人工智能展览会 人工智能论坛会 人工智能智博会

模块三作业:学生管理系统架构设计文档

apple

JavaScript 进阶(二)下

Augus

JavaScript 9月日更

直播预告丨走进云溪数据库之高可用方案

云计算

webrtc simulcast 开启

webrtc developer

webrtc、 simulcast,

面试竟然被这31道Java基础题难倒了,被阿里面试官征服了

Java 程序员 后端

Alibaba船新制作“Java架构核心宝典”,全是流行技术,限时开放

Java 程序员 架构 面试 计算机

研发工具链介绍

百度开发者中心

学习 最佳实践 方法论 研发工具

恒源云(GpuShare)_GPU租用保姆级教程,助力深度学习训练!

恒源云

Vite + Vue3 + OpenLayers 手动控制缩放级别

德育处主任

大前端 地图 vite openlayers Vue 3

Apache APISIX 为 KubeSphere 提供更好用的网关及 K8S Ingress Controller

API7.ai 技术团队

Apache 开源 API网关 APISIX KubeSphere

南京主题展2021国际大数据产业展会/论坛会

南京专业智博会

大数据 智博会 南京智博会

2021南京国际智慧工地装备展览会

南京专业智博会

智博会 智慧工地展览会 智慧工地论坛会

《中国梦》打造数亿中产阶级!疯了,疯了,全涨疯了!!

CECBC

面试官都被搞懵了,阿里P7亲自讲解

Java 程序员 后端

面试讲不清MySQL索引底层,Java面试

Java 程序员 后端

雪花算法,什么情况下发生 ID 冲突?

Java 架构 分布式 算法

联邦学习框架浅析

趣链科技

面试官手里那些秀你一脸的求质数大法,疯狂复习半个月

Java 程序员 后端

阿里大佬怒写“Java初学者宝典”,让你就业没压力

Java 阿里巴巴 程序员 面试 计算机

乘风破浪携手共赢——博睿数据深圳渠道大会圆满落幕

博睿数据

面试官问的那些Java原理你都懂吗,Java面试手写代码题目

Java 程序员 后端

物联世界2021南京物联网展览会

南京专业智博会

物联网展览会 物联网论坛会 物联网智博会

区块链“牵手”金融 面临诸多挑战

CECBC

学生管理系统整理架构设计

小智

架构训练营

交Y所K线机器人系统开发功能介绍(源码搭建)

量化系统19942438797

机器人 k线

Serverless 工程实践 | Serverless 应用开发观念的转变

阿里巴巴云原生

Serverless Serverless架构

2021年第十四届南京智慧城市展览会

南京专业智博会

智博会 智慧城市展览会 智慧城市论坛会

不会 Lua?Python 助你快速上手 Apache APISIX 插件开发

API7.ai 技术团队

Python Apache 开源 API网关 APISIX

基于HUAWEI AppGallery Connect开发了一款App,我得出了这几点结论!_移动_InfoQ精选文章