HarmonyOS鸿蒙Next中为什么内部测试会有仅支持编译Hap和应用内hsp包的限制?
HarmonyOS鸿蒙Next中为什么内部测试会有仅支持编译Hap和应用内hsp包的限制? 如果应用引入了三方 sdk,而三方 sdk 有集成态 hsp,就用不了内部测试。而苹果的内部测试 TestFlight 没有类似的限制的。不能放开这个限制吗?
【解决方案】
集成态HSP:构建、发布过程中,不与特定的应用包名耦合;使用时,工具链支持自动将集成态HSP的包名替换成宿主应用包名,并且会重新签名生成一个新的HSP包,作为宿主应用的安装包,这个新的HSP也属于宿主应用HAP的应用内HSP。
如果应用使用了集成态HSP可以使用以下两种解决方案:
- 将TGZ格式共享包转换为.HAR格式并打包到HAP中,具体转换方法可以参考文档。
- 将集成态HSP转换为应用内HSP,在应用中通过内部测试证书打包。
更多关于HarmonyOS鸿蒙Next中为什么内部测试会有仅支持编译Hap和应用内hsp包的限制?的实战系列教程也可以访问 https://www.itying.com/category-93-b0.html
有位同学给 hapck(鸿蒙一键打包工具) 提了个 issue,当时问题是来自三方sdk包含了集成态 hsp,导致打出来的包无法安装。
原因是 hpack 在搜索打包文件时,遗漏了集成态 hsp,导致这个hsp未被签名,所以安装不起。
hpack 经过修改后,能够成功安装带有集成态的hsp应用了。所以集成态的hsp也需要像自己本地的hsp一样使用验签工具签名,一同安装。
这个跟打包工具有关系吗?这个是鸿蒙内部测试的限制…文档有说明这个限制,
集成态HSP:构建、发布过程中,不与特定的应用包名耦合;使用时,工具链支持自动将集成态HSP的包名替换成宿主应用包名,并且会重新签名生成一个新的HSP包,作为宿主应用的安装包,这个新的HSP也属于宿主应用HAP的应用内HSP。 https://developer.huawei.com/consumer/cn/doc/harmonyos-guides/in-app-hsp
多谢,所以直接使用这个开源打包工具 hpack,可以解决应用集成了三方 sdk 里使用了集成态 hsp,导致应用 用不了 内部测试的问题吗?
直接是AGC上发布内部app测试是没有任何限制的。
在开发过程中,您可能需要在开发团队内共享应用或进行内部测试,此时您可以使用华为提供的内部测试功能。
使用内部测试,您可以将应用发布上传至您的服务器或者第三方云上,团队参与测试的人员可以将应用下载到授权的设备上测试。您可以更灵活发布版本和限定测试范围,助您提前发现问题,及时修复问题和优化版本体验。
使用内部测试方式,您无需提交应用至华为应用市场,可以更灵活控制版本发布节奏。内部测试和其他测试方式区别如下,您可以根据实际业务需求,选择合适的测试方式。
| 区别 | 内部测试 | AppGallery邀请测试 | AppTest邀请测试 | 公开测试 |
|---|---|---|---|---|
| 面向对象 | 邀请开发团队内部成员测试 | 可邀请友好、信任的小范围用户 | 可邀请友好、信任的小范围用户 | 面向全网所有用户公开招募测试 |
| 参与人数 | 安装设备上限100台 | 上限10000人 | 上限10000人 | 下载安装次数上限1000万次 |
| 支持设备类型 | 手机、PC/2in1、平板 | 手机、平板、PC/2in1 | 手机、平板、PC/2in1 | 手机、平板、PC/2in1 |
| 支持同时测试的版本数 | 由开发者部署决定 | 100个 | 100个 | 1个 |
| 发布AppGallery测试专区 | 否 | 必须 | 否 | 可选 |
| 发布AppTest | 否 | 否 | 必须 | 否 |
| 是否支持分享链接 | 支持 | 支持 | 支持 | 支持 |
| 支持的应用类型 | HarmonyOS NEXT应用 | HarmonyOS NEXT应用/元服务 | HarmonyOS NEXT应用/元服务 | HarmonyOS NEXT应用/元服务 |
| 支持的国家/地区 | 仅支持分发中国大陆地区 | 仅支持分发中国大陆地区 | 仅支持分发中国大陆地区 | 仅支持分发中国大陆地区 |
详见开发文档:https://developer.huawei.com/consumer/cn/doc/app/agc-help-internal-test-0000002270709477
认真看下我的问题?
是的,建议直接使用内部测试,没有任何限制。
文档说明有这个限制
鸿蒙Next内部测试阶段限制仅编译Hap和应用内Hsp包,是为了聚焦验证核心架构的稳定性和性能。这种限制有助于集中测试资源,确保应用模型和包管理机制在独立部署场景下的可靠性。目前暂不支持跨应用共享的Hsp,是测试策略的阶段性安排。
在HarmonyOS Next的内部测试阶段,限制仅支持编译HAP和应用内HSP包,主要是出于以下技术和管理层面的考虑:
-
确保测试环境的稳定性和一致性:内部测试的核心目标是验证应用主体功能在Next系统上的兼容性和稳定性。集成态HSP(Harmony Shared Package)通常由第三方提供,其版本、质量及对Next的适配度存在不确定性。限制其使用可以避免因第三方动态包的兼容性问题(如API变更、系统权限差异)干扰对应用本身质量的评估,保证测试基线统一。
-
聚焦核心功能验证:当前阶段,内部测试更关注应用主包(HAP)及与应用强耦合的本地HSP的适配情况。第三方SDK的集成态HSP可能涉及额外的依赖或系统接口调用,在Next尚未完全开放所有能力的情况下,过早引入可能增加调试复杂度,影响测试效率。
-
安全与合规管控:集成态HSP可能包含外部代码,其安全性和合规性在Next新架构下仍需进一步验证。限制此类包体有助于在测试环节降低潜在风险,符合分阶段开放的平台策略。
与苹果TestFlight的对比需注意两者生态差异:iOS生态经过长期发展,第三方库的审核与适配机制已非常成熟;而HarmonyOS Next作为新一代系统,正处于生态构建的关键期,采取更谨慎的测试策略是为了保障整体体验。
未来,随着Next系统能力逐步开放和生态适配成熟,此类限制有望逐步放宽。建议现阶段与第三方SDK提供方保持沟通,推动其尽快完成对Next的适配。

