OpenHarmony应用开发技巧 - 如何获取证书指纹

概述

文档环境

开发环境:Windows 11

DevEco Studio 版本:DevEco Studio 3.1 Beta1(3.1.0.200)

SDK 版本:3.2.10.7(OpenHarmony 3.2 Beta5 Full SDK)

应用模型:Stage

开发板型号:DAYU 200

系统版本:OpenHarmony 3.2 Beta5

示例工程:ServiceExtAbility的创建与使用(OpenHarmony 3.2 Beta5分支)

功能简介

证书指纹用于配置应用权限预授权文件(install_list_permissions.json)和应用特权配置文件(install_list_capability.json)。

如何获取证书指纹

方式一:通过签名配置获取

  1. 证书存放在 HarmonyAppProvision 文件的distribution-certificate 字段下,新建 profile.cer 文件,将证书的内容拷贝到 profile.cer 文件中。

自动签名使用的 HarmonyAppProvision 文件为 SDK目录 > {Version} > toolchains > lib > UnsgnedReleasedProfileTemplate.json 文件。
  1. profile.cer 内容换行和去掉换行符。

  1. 使用keytool 工具执行 "keytool -printcert -file profile.cer" 打印对应的证书指纹。

若提示以下信息,则未安装 Java环境 keytool工具 未加入环境变量中。可安装后再次尝试,或使用完整路径使用工具。

打印指纹信息:

  1. 处理证书指纹,使用SHA256证书信息,去掉冒号,最终结果为:

7AA667BC46B8B1EAAA36EEFC2E7FED47BD49A68C7C07A36F29191769FCF36AD0

方式二:通过安装HAP包获取

  1. DevEco Studio 中打开 Log 界面,选择 HiLog 过滤 "finger" 字符。

  1. 进入系统 Shell命令行 ,设置 Hilog 等级。

hilog -b D
  1. 单击 Run > Run '{模块名称}' 运行工程中任意HAP包。在运行时会进行HAP包的安装,此时有可能安装不成功报错,是因为我们应用未正确配置导致,但此时我们目的为获取指纹信息,忽略错误。

ServiceExtAbility工程为例:

忽略错误信息

  1. 查看 DevEco Studio Log 界面,指纹信息已经被打印出来。

7AA667BC46B8B1EAAA36EEFC2E7FED47BD49A68C7C07A36F29191769FCF36AD0

方式三:通过新建空模块获取

  1. 在工程中创建新 ModuleFile > New > Module > Empty Ability。一直点击 Next 直到创建成功

  1. 执行 Run > Run 'application',将新创建的 Module 的HAP包被安装到系统中。

ServiceExtAbility工程为例:

  1. 执行hdc shell "bm dump -n {工程包名} | grep finger" 命令打印出HAP的finger 信息,然后删除新创建的Module ,恢复工程。

ServiceExtAbility工程为例:

hdc shell "bm dump -n ohos.samples.eTSServiceExtAbility | grep finger"
7AA667BC46B8B1EAAA36EEFC2E7FED47BD49A68C7C07A36F29191769FCF36AD0

参考文档

OpenHarmony Gitee Docs - 应用特权配置指南

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

TiZizzz

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值