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

本文介绍了作者基于华为AppGallery Connect开发App的经验,通过崩溃模拟和性能测试,验证了AG Connect在崩溃统计和性能管理方面的优秀能力。与友盟和TalkingData对比,AG Connect在启动次数、渠道统计、生态服务上展现优势,且严格遵守GDPR,为开发者提供免费且全面的服务。

点击“开发者技术前线”,选择“星标????”

在看|星标|留言,  真爱

来自:开发者技术前线

作者:GC

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服务

接下来我们来测评下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开发环境

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

// ...
dependencies {
// ...
// Add APM SDK library dependency
implementation 'com.huawei.agconnect:agconnect-apms:1.3.1.300'
implementation 'com.huawei.agconnect:agconnect-crash:1.4.0.300' 
}
  1. 在APP模块(应用级)的混淆配置中添加以下排除项:

华为AppGallery Connect是华为提供的一套服务,自2019年4月全新改版上线以来,已陆续为160多万开发者开放了67项服务,覆盖全球170多个国家和地区,可帮助开发者的应用和游戏精准触达用户,提升用户体验,通过强曝光来提高下载安装量[^2]。 ### 功能介绍 - **应用签名**:提供应用签名工具,包含重要资源文件pepk.jar,是上架华为AppGallery Connect应用商店时进行应用签名所必需的工具。该仓库除了pepk.jar文件本身,还提供了对应的命令行操作指南,帮助开发者顺利完成应用签名过程[^1]。 - **应用分发**:开发者可在AppGallery Connect创建应用,根据实际情况选择上传APK、App Bundle、RPK等应用软件包类型,审核通过后,即可实现应用和游戏一键分发给全球华为用户,分发到手机、平板、智慧屏、手表、车机等多种终端设备上[^2]。 - **差分下发与安装调度**:官方能力支持差分下发、安装调度、流量节省、回滚通道,uni - app只留10行桥接代码;Pad大屏差异通过一次条件编译解决,无需长期并行版本[^3]。 - **云数据库操作**:支持对云数据库进行操作,如数据的插入、查询等。例如可以进行日期条件的查询,以及数据的插入操作等[^4][^5]。 ### 使用指南 #### 应用签名 1. 下载文件:从项目地址https://gitcode.com/open-source-toolkit/d6d6a 下载pepk.jar文件[^1]。 2. 命令行操作:根据提供的命令行指南,进行应用签名操作。 3. 上架应用:完成签名后,将应用上传至华为AppGallery Connect应用商店。同时需确保在操作过程中遵循华为官方的签名指南,如有问题,可参考华为官方文档或联系华为技术支持[^1]。 #### 应用分发 1. 在AppGallery Connect创建应用。 2. 选择上传APK、App Bundle、RPK等应用软件包类型。 3. 等待审核通过后,应用和游戏即可一键分发给全球华为用户,并分发到多种终端设备上[^2]。 #### 云数据库操作 在代码中使用相关API进行操作,如进行日期条件查询时: ```javascript const minDate = new Date(date); // 日期的时间戳 const minDateNum = minDate.getTime(); let condition = new cloudDatabase.DatabaseQuery(record_table); condition.greaterThanOrEqualTo('startDate', minDateNum ); // 或者格式化日期为 "YYYY-MM-DD HH:MM:SS SSS" 格式 const minDateStr = `${minDate.getFullYear()}-${String(minDate.getMonth() + 1).padStart(2, '0')}-${String(minDate.getDate()).padStart(2, '0')} ${String(minDate.getHours()).padStart(2, '0')}:${String(minDate.getMinutes()).padStart(2, '0')}:${String(minDate.getSeconds()).padStart(2, '0')} ${String(minDate.getMilliseconds()).padStart(3, '0')}`; let condition = new cloudDatabase.DatabaseQuery(record_table); condition.greaterThanOrEqualTo('startDate', minDateStr ); ``` 进行数据插入操作时: ```javascript const agcDataBase = cloudDatabase.zone('FanQieSQL'); public async upsertUser(uid, data) { try { let book = new BookInfo(); book.bookName = '一本书'; const result = await agcDataBase.upsert(BookInfo); return result; } catch (error) { showLog.error(TAG, `插入失败: ${error}`); throw error; } } ```
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值