QCon 演讲火热征集中,快来分享技术实践与洞见! 了解详情
写点什么

基于 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:192797

评论

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

redis的五种数据类型

爱好编程进阶

Java 面试 后端开发

OpenFaaS实战之四:模板操作(template)

爱好编程进阶

Java 面试 后端开发

RabbitMQ的高级特性和消息补偿机制

爱好编程进阶

Java 面试 后端开发

krpano全景之vtour文件夹和tour

爱好编程进阶

Java 面试 后端开发

[Day23]-[数据结构]手写LRU

方勇(gopher)

LeetCode LRU 数据结构算法

解锁OpenHarmony技术日!年度盛会,即将揭幕!

OpenHarmony

大会 OpenHarmony

自动化的艺术

俞凡

架构 大厂实践 PayPal

kotlin 如何解决 java 开发痛点,让程序员 happier

爱好编程进阶

Java 面试 后端开发

Spring Data ElasticSearch基本使用

爱好编程进阶

Java 面试 后端开发

在docker上编译openjdk8

程序员欣宸

Java JVM 4月月更

将新增和编辑的数据同步更新到列表

岛上码农

flutter ios开发 安卓开发 4月月更 跨平台开发

JVM+分布式+算法

爱好编程进阶

Java 面试 后端开发

MySQL-InnoDB-事务

爱好编程进阶

Java 面试 后端开发

Netty 核心源码解读 —— ServerBootstrap 篇

爱好编程进阶

Java 面试 后端开发

Netty学习之旅------高仿Dubbo服务调用模型、私有协议实现、编码解码器使用实践

爱好编程进阶

Java 面试 后端开发

Java泛型机制详解;这些你都知道吗?

爱好编程进阶

Java 面试 后端开发

Java语言特点

爱好编程进阶

Java 面试 后端开发

Java岗大厂面试百日冲刺 - 日积月累,每日三题【Day39

爱好编程进阶

Java 面试 后端开发

Shiro认证源码图文解析

爱好编程进阶

Java 面试 后端开发

顶级元宇宙游戏Plato Farm,近期动作不断利好频频

小哈区块

2021年秋招,薪资排行NO

爱好编程进阶

Java 面试 后端开发

Java 线程池原理分析

爱好编程进阶

Java 面试 后端开发

Java单例模式实现,一次性学完整,面试加分项

爱好编程进阶

Java 面试 后端开发

Spring-Data-Jpa动态查询(Specification)

爱好编程进阶

Java 面试 后端开发

Plato Farm-以柏拉图为目标的农场元宇宙游戏

西柚子

Choreographer全解析

爱好编程进阶

Java 面试 后端开发

AtomicIntegerArray源码分析与感悟

爱好编程进阶

Java 面试 后端开发

Java 结合实例学会使用 静态代理、JDK动态代理、CGLIB动态代理

爱好编程进阶

Java 面试 后端开发

世界读书日:我想推荐这几本书

宇宙之一粟

书籍推荐 书单 4月月更

22道Java Spring Boot高频面试题

爱好编程进阶

Java 面试 后端开发

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