鸿蒙OS4.0兼容性测试

背景

OpenHarmony兼容性测评主要是验证合作伙伴的设备和业务应用满足OpenHarmony开源兼容性定义的技术要求,确保运行在OpenHarmony上的设备和业务应用能稳定、正常运行,同时使用OpenHarmony的设备和业务应用有一致性的接口和业务体验。

OpenHarmony兼容性测评服务包括:产品兼容性技术规范文档与兼容性测试两部分,本文重点介绍兼容性测试。

兼容性测试包括:acts、acts-validator、hats、dcts、ssts

OpenHarmony兼容性测试需要合作伙伴获取代码和兼容性测试套,并完成自测,取得兼容性测试报告后,在测试流程上传兼容性测试报告供开放原子开源基金会团队进行审核或抽测。兼容性测试的套件范围:

acts(application compatibility test suite)应用兼容性测试套件,看护北向HAP兼容、OpenHarmony开发API兼容。

acts-validator 应用兼容性补充测试套件,需要根据引导完成手工测试。

hats(Hardware Abstraction Test Suite )硬件抽象兼容性测试套,看护HDI层接口。

dcts(Distributed Compatibility Test Suite )分布式兼容性测试套,看护分布式兼容性。

ssts(System Security Test Suite )系统安全漏洞测试套,看护已知系统安全漏洞补丁的修复情况。

测试分类 轻量系统 小型系统 标准系统
acts Y Y Y
acts-validator N N Y
hats N N Y
dcts N N Y
ssts N N Y

以上部分是对兼容性测评的常规介绍。下面我们要讲从OpenHarmony3.2Release开始,到4.0进入设置应用的兼容性证明页面,如下图:

查看log得知

登录后复制

复制代码
A00500/[Settings]: Settings .compatibilityAssessment -> attestResultInfo success{"authResult":-2,"softwareResult":-2,"ticket":"","softwareResultDetail":[-2,-2,-2,-2,-2]}

简单解读

这是什么?

  • 这是device_attest,设备证明部件,是一个系统服务(SystemAbility), 是OpenHarmony compatibility agreement约定需要设备厂商在产品中集成的部件,用于支撑生态伙伴完成产品的兼容性测试。其基本功能是看护OpenHarmony生态设备认证结果,通过端云校验机制,支撑OpenHarmony南北向生态统一,保障用户体验。

厂商要干什么?

  • 该部件用于标准系统(standard system)。 生态伙伴(即设备厂商)兼容性测试工作流程; 1、设备厂商在[OpenHarmony兼容性平台]注册企业账号,完成设备信息登记,将登记的设备信息写入设备,并完成依赖接口适配; 2、设备厂商启动认证测试,上传xts测试报告; 3、OpenHarmony认证云认证通过设备厂商产品信息,发放token到OpenHarmony兼容性平台; 4、设备厂商从OpenHarmony兼容性平台获取token; 5、设备厂商经三方产线将token烧录到OpenHarmony设备; 6、设备证明部件与OpenHarmony认证云通信,对设备进行激活/认证,设备从OpenHarmony认证云获取认证结果,存储到本地; 7、系统服务、系统应用等可通过设备证明部件提供的接口获取认证结果,并基于认证结果进行结果展示。、

具体原理是什么?

1、设备启动过程中,设备证明部件被init进程拉起,监控网络状态,设备联网后,读取token和系统参数,发起设备认证端云通信; 2、端云通信采用https协议,设备证明部件将token和系统参数上传到OpenHarmony认证云,并获取认证结果和新token; 3、设备证明部件将认证结果存储到沙箱目录,并更新token; 4、设备证明部件对外提供认证结果查询接口,供其他模块判定设备是否已通过认证,比如系统服务、系统应用等。

总结

  • 在OpenHarmony社区的兼容性平台 -> 设备管理页面有管理软证书的页面,可以下载软证书的申请指导和工具,按照指导进行调试和配置;
  • 认证通过后,生产设备需要烧录对应软证书(一机一张),然后设备联网后就能查到是否是通过测评的设备;
  • 划重点,商用设备才要用软证书验证,要是开发板,模组等其他类型的不做要求;
  • 为了维护OpenHarmony的生态健康发展和用户体验,厂商们要认真做好兼容性啊:),客户们则可以通过设置应用->系统->开发者选项->OpenHarmony兼容性测评进行查看。
相关推荐
今儿敲了吗5 小时前
鸿蒙开发第一章学习笔记
笔记·学习·鸿蒙
ujainu6 小时前
Flutter + OpenHarmony 游戏开发进阶:轨迹拖尾特效——透明度渐变与轨迹数组管理
flutter·游戏·openharmony
一起养小猫6 小时前
Flutter for OpenHarmony 实战:记账应用数据统计与可视化
开发语言·jvm·数据库·flutter·信息可视化·harmonyos
森之鸟7 小时前
多智能体系统开发入门:用鸿蒙实现设备间的AI协同决策
人工智能·harmonyos·m
jin1233227 小时前
React Native鸿蒙跨平台完成剧本杀组队详情页面,可以复用桌游、团建、赛事等各类组队详情页开发
javascript·react native·react.js·ecmascript·harmonyos
_waylau7 小时前
【HarmonyOS NEXT+AI】问答08:仓颉编程语言是中文编程语言吗?
人工智能·华为·harmonyos·鸿蒙·仓颉编程语言·鸿蒙生态·鸿蒙6
前端菜鸟日常8 小时前
鸿蒙开发实战:100 个项目疑难杂症汇编
汇编·华为·harmonyos
jin1233228 小时前
基于React Native鸿蒙跨平台移动端表单类 CRUD 应用,涵盖地址列表展示、新增/编辑/删除/设为默认等核心操作
react native·react.js·ecmascript·harmonyos
摘星编程10 小时前
OpenHarmony环境下React Native:DatePicker日期选择器
react native·react.js·harmonyos
一起养小猫10 小时前
Flutter for OpenHarmony 实战:番茄钟应用完整开发指南
开发语言·jvm·数据库·flutter·信息可视化·harmonyos