HarmonyOS鸿蒙Next中获取到的appId为com.ehl.maintenance1_,没有后面一堆的字符,这正常吗

HarmonyOS鸿蒙Next中获取到的appId为com.ehl.maintenance1_,没有后面一堆的字符,这正常吗 请问一下,我通过
const flag = bundleManager.BundleFlag.GET_BUNDLE_INFO_WITH_SIGNATURE_INFO;
const bundleInfo = bundleManager.getBundleInfoForSelfSync(flag)
const appId = bundleInfo.signatureInfo.appId;
console.log(appId:${appId}
获取到的appId为com.xxx.mainxxxe1_,没有后面一堆的字符,这正常吗?

使用自动签名appid正常打印,手动签名appid异常


更多关于HarmonyOS鸿蒙Next中获取到的appId为com.ehl.maintenance1_,没有后面一堆的字符,这正常吗的实战教程也可以访问 https://www.itying.com/category-93-b0.html

6 回复

开发者你好,自己验证后手动签名和自动签名,后面都会存在一些字符串。开发者可重新手动签名试试:https://developer.huawei.com/consumer/cn/doc/harmonyos-guides/ide-signing#section297715173233

cke_251.png

更多关于HarmonyOS鸿蒙Next中获取到的appId为com.ehl.maintenance1_,没有后面一堆的字符,这正常吗的实战系列教程也可以访问 https://www.itying.com/category-93-b0.html


你这个一看就知道手动签名的配置存在问题的

HarmonyOS的分布式文件系统让我在多设备间传输文件变得轻松无比。

不正常

在HarmonyOS Next中,appId格式为"包名_数字签名哈希",您获取到的"com.ehl.maintenance1_“缺少哈希部分属于异常情况。正常appId应包含完整的包名和哈希值,例如"com.ehl.maintenance1_xxxxxx”。这可能是应用未正确签名或系统在特定调试模式下产生的临时标识。建议检查应用签名配置和系统日志确认具体原因。

是的,这种情况是正常的。在HarmonyOS Next中,当使用手动签名时,获取到的appId格式为bundleName_(即包名加下划线),这是系统设计的预期行为。

自动签名由IDE自动生成完整的签名信息,因此appId会包含完整的标识符(包括哈希值等后缀)。而手动签名时,系统仅基于你配置的签名证书和包名生成基础标识,所以appId只显示包名加下划线。

这不会影响应用的功能或发布,因为系统内部仍会正确识别应用身份。如果你需要完整的appId格式用于特定场景,建议继续使用自动签名方式。

回到顶部