HarmonyOS 鸿蒙Next应用签名获取为空

发布于 1周前 作者 h691938207 来自 鸿蒙OS

HarmonyOS 鸿蒙Next应用签名获取为空 获取应用签名是空 采用bundleManager.getBundleInfoForSelfSync(bundleFlag)  bundleInfo中的signatureInfo是null,已经签名了。签名见附件。

如何才能在运行时拿到签名的hash值?

https://developer.huawei.com/consumer/cn/doc/harmonyos-faqs-V5/faqs-crypto-architecture-2-V5

这个文档我已经看过了。


更多关于HarmonyOS 鸿蒙Next应用签名获取为空的实战系列教程也可以访问 https://www.itying.com/category-93-b0.html

2 回复

参考例子如下:

import bundleManager from '@ohos.bundle.bundleManager';

import { BusinessError } from '@ohos.base';

let bundleFlags = bundleManager.BundleFlag.GET_BUNDLE_INFO_WITH_APPLICATION | bundleManager.BundleFlag.GET_BUNDLE_INFO_WITH_SIGNATURE_INFO;

try {
    bundleManager.getBundleInfoForSelf(bundleFlags).then((data) => {
        hilog.info(0x0000, 'testTag', 'getBundleInfoForSelf successfully. Data: %{public}s', JSON.stringify(data));
    }).catch((err: BusinessError) => {
        hilog.error(0x0000, 'testTag', 'getBundleInfoForSelf failed. Cause: %{public}s', err.message);
    });
} catch (err) {
    let message = (err as BusinessError).message;
    hilog.error(0x0000, 'testTag', 'getBundleInfoForSelf failed: %{public}s', message);
}

注意:

  • bundleFlags是否添加了bundleManager.BundleFlag.GET_BUNDLE_INFO_WITH_SIGNATURE_INFO
  • 尝试用下上述代码获取

更多关于HarmonyOS 鸿蒙Next应用签名获取为空的实战系列教程也可以访问 https://www.itying.com/category-93-b0.html


针对帖子标题“HarmonyOS 鸿蒙Next应用签名获取为空”的问题,以下是专业且直接的回答:

在HarmonyOS鸿蒙系统中,应用签名是确保应用完整性和来源可信的重要机制。若你遇到应用签名获取为空的问题,可能的原因包括但不限于:

  1. 签名文件缺失或损坏:检查你的应用是否包含了正确的签名文件(如.p12或.pem文件),并确保其未损坏。

  2. 签名配置错误:在鸿蒙应用的配置文件(如config.json)中,确认签名相关的配置项是否设置正确,包括签名文件的路径、别名和密码等。

  3. 构建工具问题:确保你使用的构建工具(如DevEco Studio)为最新版本,且支持当前鸿蒙系统的签名机制。

  4. 代码实现问题:如果你是通过代码获取应用签名,检查相关API的使用是否正确,以及是否有权限访问签名信息。

  5. 系统限制:部分鸿蒙系统版本可能对应用签名的获取有特定限制,确认你的系统版本是否支持该操作。

如果以上步骤均无法解决问题,建议直接联系鸿蒙系统的技术支持团队,或访问官网客服获取更专业的帮助。官网客服地址:https://www.itying.com/category-93-b0.html。在这里,你可以获得针对鸿蒙系统的专业解答和支持。

回到顶部