​HarmonyOS可以通过DevEco Studio 构建对应的APP包或者是HAP包,对于签名我们有两种方式:

  • DevEco Studio提供了根据开发者信息生成自动调试签名的能力方便各位开发者进行调试,简化签名步骤。
  • 在开发流程中也可以根据自己的需要生成固定的调试签名和发布签名文件给APP包或者HAP包进行手动签名,调试签名需要添加设备的UDID才可以在相应的设备上运行。

下面提供一个查看APP包或者HAP包的签名信息的方法。方法很简单,通过NotePad++打开对应的APP包或者HAP,全局搜索“version-name”

​​​

如果搜索不到相关信息,证明这个包是一个未签名的包即unsigned包,没有签名的包无法在真机上运行只能在模拟器上运行。

如果可以搜索到相关信息,大家可以获取到如下一个json字符串:

{
"version-name": "2.0.0",
"version-code": 2,
"app-distribution-type": "app_gallery",
"uuid": "",
"validity": {
"not-before": 1678703485,
"not-after": 1773397884
},
"type": "release",
"bundle-info": {
"developer-id": "",
"distribution-certificate": "",
"bundle-name": "",
"apl": "normal",
"app-feature": "hos_normal_app"
},
"baseapp-info": {},
"permissions": {
"restricted-permissions": []
},
"acls": {
"allowed-acls": []
},
"issuer": "app_gallery"
}

这些信息与HarmonyAppProvision配置中的信息是一致的,上述json是从APP Release包中提取的信息,其中:

  • “version-name”“version-code”表示应用的版本信息;
  • “type”表示应用用于是发布场景(release)还是调试场景(debug);
  • “bundle-name”对应HarmonyOS应用的bundleName;
  • “distribution-certificate”表示这边使用的是发布证书,如果是调试证书这边会显示为“development-certificate”
  • “apl”表示元能力权限等级APL(Ability Privilege Level), 默认情况下,应用的APL等级都为normal等级,不了解的可以参考文末的链接
  • “acls”表示acl权限信息。

如果是一个调试应用程序包,json中还会有“debug-info”的信息,如下:

"debug-info": {
"device-ids": [
"BF377XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXC2",
"6B513XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXB1",
"82B8AXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX15"
],
"device-id-type": "udid"
},

其中“device-ids”表示应用调试场景下允许调试的设备ID列表。需要注意的是,如果我们的设备的UDID不在这个列表中,调试应用是无法安装的会报” INSTALL_FAILED_APP_SOURCE_NOT_TRUSTED”的错误。

最后,如果大家想要了解很多的信息可以查看以下OpenHarmony中的说明文档:

1、 HarmonyAppProvision配置文件说明

2、 访问控制(权限)开发概述

【HarmonyOS】HarmonyOS应用APP与HAP包签名信息查看方法的更多相关文章

  1. 获取APP应用的包名信息

    语言: python 3.7 需求:获取APP的包名和程序入口信息,以便在 Appium 脚本中配置 appPackage 和 appActivity 参数. 场景一 资源:已有APP应用的apk安装 ...

  2. anroid 查看签名信息的方法

    1.把app改成压缩文件 2.解压以后找到META-INF\CERT.RSA 3.在CMD命令行里面输入:  keytool -printcert -file  E:\META-INF\CERT.RS ...

  3. OpenHarmony 3.1 Beta版本关键特性解析——HAP包安装实现剖析

    ​(以下内容来自开发者分享,不代表 OpenHarmony 项目群工作委员会观点)​ 石磊 随着社会的不断发展,人们逐渐注重更加高效.舒适.便捷.有趣的生活和工作体验. OpenAtom OpenHa ...

  4. AppCan移动开发技巧:3步走,获取移动APP签名信息

    大家知道,在移动APP开发里,与应用包名一样,应用的签名信息需是唯一的,否则将会出现应用冒领.重复安装等问题.之前分享过安卓应用的签名如何获取(点击查看),这里将继续以AppCan平台为例,分享如何获 ...

  5. 微信APP支付V3版本签名 && APP下单/订单查询接口Python版实现

    问题背景 最近接入微信支付,微信官方并没有提供Python版的服务端SDK,因而只能根据文档手动实现一版,这里记录一下微信支付的整体流程.踩坑过程与最终具体实现. 微信支付APP下单流程 根据微信官方 ...

  6. 使用jni技术进行android应用签名信息核查及敏感信息保护

           近期业余时间写了一款应用<摇啊摇>,安智.安卓.360等几个应用商店已经陆续审核通过并上线.从有想法到终于将产品做出来并公布,断断续续花了近二个半月的业余时间,整体来讲还算顺 ...

  7. mac 下利用AndroidStudio APK获取签名信息

    注:网上没找到特别好的.不是xxx.keystore 就是debug.keystore 而真正去找这些目录的时候系统就会提示没有这个秘钥库文件.所以就悲剧了 下面附上快速查看APK签名信息的方法(SH ...

  8. android 给空白包签名

    前言:之前公司app在腾讯开放平台认领应用时,涉及了一个问题:就是给空白包签名.然后再上传上去审核. 腾讯开放平台的官方说明如下, 如何签名:jarsgner-verbose-keystore[key ...

  9. Visual Studio 2017为Android APK包签名

    Visual Studio 2017为Android APK包签名   为Android APK包签名,可以保证后期的App顺利升级.在Visual Studio 2015中,IDE会自动生成两个AP ...

  10. Mac App Store应用签名和pkg签名,查看签名

    App签名 只有用苹果颁发的证书签名的应用才能在App Store上进行销售,所以我们开发的应用必须打上签名. 签名有两种方式,一是使用Xcode,在配置里面设置签名,编译出来的app就有了签名:二是 ...

随机推荐

  1. 逍遥自在学C语言 | 第一个C语言程序 九层之台起于垒土

    一.人物简介 第一位闪亮登场,有请今后会一直教我们C语言的老师 -- 自在. 第二位上场的是和我们一起学习的小白程序猿 -- 逍遥. 二.C语言简介 C语言是一种高级语言,运行效率仅次于汇编,支持跨平 ...

  2. IDA 逆 WDF 驱动时的函数识别插件

    快一年没更新了,累,工作累,各种累,想换个工作,突然发现找不到合适的工作了,哎,自己往火坑里跳,怪不得别人. import idautils import idaapi import idc prin ...

  3. Rancher(V2.6.3)安装K8s教程

    Rancher(V2.6.3)安装K8s教程 一,安装前环境准备: 1,升级Linux服务器内核 Ubuntu20.04: #查看当前内核版本 uname -rs #查看软件库中可下载的内核 sudo ...

  4. [ElasticSearch]#Search Guard#sgadmin参数说明

    sgadmin.sh/sgadmin.bat是Elastic Search的开源安全组件Search Guard内的可执行脚本. 在修改SG组件的用户角色.权限.密码时,需使用到此脚本. 在修改完Se ...

  5. 基于kubeasz部署高可用k8s集群

    在部署高可用k8s之前,我们先来说一说单master架构和多master架构,以及多master架构中各组件工作逻辑 k8s单master架构 提示:这种单master节点的架构,通常只用于测试环境, ...

  6. 小程序TS报错 "无法重新声明块范围变量。此处也声明了xx "

    初学者简单的方法,目前还没有遇到问题 想法很简单,当export导出,骗eslint认为是一个模块. 如果有新的问题欢迎留言,我也在学习 1 import utilsApi from '../util ...

  7. [Pytorch框架] 2.1.3 神经网络包nn和优化器optm

    文章目录 PyTorch 基础 : 神经网络包nn和优化器optm 定义一个网络 损失函数 优化器 PyTorch 基础 : 神经网络包nn和优化器optm torch.nn是专门为神经网络设计的模块 ...

  8. .net 6 使用 NEST 查询,时间字段传值踩坑

    0x01业务描述 说明: 同事搭建的业务系统,最开始使用 log4net  记录到本地日志. 然后多个项目为了日志统一,全部记录在 Elasticsearch ,使用  log4net.Elastic ...

  9. Irwin-Hall 分布学习笔记

    定理:Irwin-Hall 分布 对于 \(n\) 个在 \([0,1]\) 内均匀分布的实数随机变量,它们的和不超过一个实数 \(z\) 的概率为: \[F(z)=\sum\limits_{k=0} ...

  10. vue页面中展示markdown以及katex公式

    场景 数据库中有markdown语法的字符串,需要展示为正常的页面,难点在于其中的katex数学公式 解决方式 使用showdown及其族系插件 npm i showdown npm i showdo ...