鸿蒙安装HAP时提示“code:9568344 error: install parse profile prop check error” 问题现象

在启动调试或运行应用/服务时,安装HAP出现错误,提示“error: install parse profile prop check error”错误信息。

在这里插入图片描述

解决措施

该问题可能是由于应用使用了应用特权,但应用的签名文件发生变化后未将新的签名指纹重新配置到设备的特权管控白名单文件install_list_capability.json中,可以通过如下步骤进行解决。

  1. 获取新的签名指纹。

    • 在项目级build-profile.json5文件中,signingConfigs字段内的profile的值即为签名文件的存储路径。

    • 打开该签名文件(后缀为.p7b),打开后在文件内搜索“development-certificate”,将“-----BEGIN CERTIFICATE-----”和“-----END CERTIFICATE-----”以及中间的信息拷贝到新的文本中,注意换行并去掉换行符,保存为一个新的.cer文件,如命名为xxx.cer。
      新的.cer文件格式如下图(仅作为格式示意,内容以实际为准):
      在这里插入图片描述

    • 使用keytool工具(在DevEco Studio安装目录下的jbr/bin文件夹内),执行如下命令通过.cer文件获取证书指纹的SHA256值。

      keytool -printcert -file xxx.cer
      
    • 将证书指纹中SHA256的内容去掉冒号,即为最终要获得的签名指纹。
      如SHA256值为下图(仅作为格式示意,内容以实际为准):
      在这里插入图片描述

      去掉冒号后的签名指纹为:5753DDBC1A8EF88A62058A9FC4B6AFAFC1C5D8D1A1B86FB3532739B625F8F3DB

  2. 获取设备的特权管控白名单文件install_list_capability.json。
    连接设备。
    执行如下命令查看设备的特权管控白名单文件install_list_capability.json。

    find /system -name install_list_capability.json
    HarmonyOS设备上install_list_capability.json的位置通常为以下几种,选取其中一个即可:
    /system/variant/phone/base/etc/app/install_list_capability.json
    /system/etc/app/install_list_capability.json
    /system/etc/etc/app/install_list_capability.json
    OpenHarmony设备上install_list_capability.json的位置通常为:/system/etc/app/install_list_capability.json
    执行如下命令拉取install_list_capability.json。
    hdc shell mount -o rw,remount /
    hdc file recv /system/variant/phone/base/etc/app/install_list_capability.json
    
  3. 将步骤1获取到的签名指纹配置到install_list_capability.json文件的app_signature中,注意要配置到对应的bundleName下。
    在这里插入图片描述

  4. 将修改后的install_list_capability.json文件重新推到设备上,并重启设备。

    hdc shell mount -o rw,remount / 
    hdc file send install_list_capability.json /system/variant/phone/base/etc/app/install_list_capability.json 
    hdc shell chmod 777 /system/variant/phone/base/etc/app/install_list_capability.json 
    hdc shell reboot
    
  5. 设备重启后,重新安装新的应用即可。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/pingmian/67705.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

基于STM32的智能门锁安防系统(开源)

目录 项目演示 项目概述 硬件组成: 功能实现 1. 开锁模式 1.1 按键密码开锁 1.2 门禁卡开锁 1.3 指纹开锁 2. 功能备注 3. 硬件模块工作流程 3.1 步进电机控制 3.2 蜂鸣器提示 3.3 OLED显示 3.4 指纹与卡片管理 项目源代码分析 1. 主程序流程 (main…

html学习笔记(1)

一、什么是HTML HTML是HyperText Markup Language的缩写,即超文本标记语言,是一种用于创建网页的标准标记语言。以下是关于HTML的详细介绍: 基本概念 超文本:HTML中的“超文本”指的是网页中可以包含链接,这些链接…

JavaWeb开发(十五)实战-生鲜后台管理系统(二)注册、登录、记住密码

1. 生鲜后台管理系统-注册功能 1.1. 注册功能 (1)创建注册RegisterServlet,接收form表单中的参数。   (2)service创建一个userService处理业务逻辑。   (3)RegisterServlet将参数传递给ser…

【cuda学习日记】3.1 CUDA执行模型--线程束分化

3.1.1 将同用的function放到header文件里 ./common/common.h #define CHECK(call) \{\const cudaError_t error call; \if (error ! cudaSuccess)\{\printf("Error: %s: %d\n", __FILE__, __LINE__);\printf("code :%d reason :%s\n", error , cudaGetEr…

【STM32-学习笔记-15-】MAX7219点阵屏模块

文章目录 MAX7219点阵模块一、MAX7219Ⅰ、 概述Ⅱ、功能特点Ⅲ、引脚功能Ⅳ、典型应用电路Ⅴ、内部组成结构Ⅵ、时序图Ⅶ、寄存器 二、STM32控制点阵屏Ⅰ、程序框图Ⅱ、程序编写①、MAX7219.c②、MAX7219.h③、MAX7219_Img.h④、main.c MAX7219点阵模块 一、MAX7219 Ⅰ、 概述…

《知识图谱:鸿蒙NEXT中人工智能的智慧基石》

在鸿蒙NEXT系统的人工智能应用中,知识图谱技术犹如一座智慧基石,为系统的智能化提供了强大的知识支撑,开启了更智能、更高效、更个性化的交互新时代。 提升语义理解能力 知识图谱以其结构化的知识表示方式,将各种实体和它们之间…

AIP-122 资源名字

编号122原文链接AIP-122: Resource names状态批准创建日期2019-01-26更新日期2019-01-26 大多数API会发布 资源/(主要是名词),用户可以创建、检索和操作这些资源。此外,资源是 /具命的 :每个资源都有唯一的标识符&…

1.6 从 GPT-1 到 GPT-3.5:一路的风云变幻

从 GPT-1 到 GPT-3.5:一路的风云变幻 人工智能的进步一直是科技领域的一个重要话题,而在自然语言处理(NLP)领域,GPT(Generative Pre-trained Transformer)系列模型的发布,标志着一个又一个技术突破。从2018年发布的 GPT-1 到2022年推出的 GPT-3.5,OpenAI 的每一次更新…

Redis数据库笔记——持久化机制

大家好,这里是Good Note,关注 公主号:Goodnote,专栏文章私信限时Free。本文详细介绍Redis的持久化机制,目标是将内存中的数据持久化到磁盘,以保证数据的可靠性和在重启后的恢复能力。 文章目录 持久化机制A…

K8S 集群搭建和访问 Kubernetes 仪表板(Dashboard)

一、环境准备 服务器要求: 最小硬件配置:2核CPU、4G内存、30G硬盘。 服务器可以访问外网。 软件环境: 操作系统:Anolis OS 7.9 Docker:19.03.9版本 Kubernetes:v1.18.0版本 内核版本:5.4.203-…

vue中echarts-中国地图,世界地图显示(echarts5.6版本本地导入)

地图去掉南海诸岛右下角的框显示(因为显示的不是现在的10段线) 资源里面主要是有个改好的中国地图json其他的无所谓,用现有的json也行,主要是为了解决10段线的问题 引入需要注意 import * as echarts from “./echarts”; 目录…

数据结构(三) 排序/并查集/图

目录 1. 排序 2.并查集 3.图 1.排序: 1.1 概念: 排序就是将数据按照某种规则进行排列, 具有某种顺序. 分为内排序和外排序. 内排序就是: 将数据放在内存中的排序; 外排序是: 数据太多无法在内存中排序的. 1.2 插入排序: 插入排序包含: 直接插入排序和希尔排序. (1) 直接插入…

算法随笔_13: 有效三角形的个数

上一篇:算法随笔_12:最短无序子数组-CSDN博客 题目描述如下: 给定一个包含非负整数的数组 nums ,返回其中可以组成三角形三条边的三元组个数。 示例 1: 输入: nums [2,2,3,4] 输出: 3 解释:有效的组合是: 2,3,4 (使用第一个 2) 2,3,4 (使用第二个 2) 2,2,3 算法…

CSS 网络安全字体

适用于 HTML 和 CSS 的最佳 Web 安全字体 下面列出了适用于 HTM L和 CSS 的最佳 Web 安全字体: Arial (sans-serif)Verdana (sans-serif)Helvetica (sans-serif)Tahoma (sans-serif)Trebuchet MS (sans-serif)Times New Roman (serif)Georgia (serif)Garamond (se…

线程池的数据结构是什么 为什么会占用堆内存 线程池是一个对象吗

线程池是一种用于管理和复用线程以执行多个任务的设计模式,它通过预先创建一组线程,并将这些线程重复用于执行提交给线程池的任务,从而减少因频繁创建和销毁线程带来的开销。在Java中,线程池通常通过java.util.concurrent包下的Th…

PyTorch 神经协同过滤 (NCF) 推荐系统教程

目录 教程概述1. 神经协同过滤模型概述NCF 模型的主要组成部分: 2. 数据加载与预处理3. 定义神经协同过滤模型4. 训练模型5. 模型评估6. 推荐物品7. 完整示例8. 总结 在本教程中,我们将使用 PyTorch 实现一个神经协同过滤(Neural Collaborat…

03.选择排序

一、题目思路 选择排序是一种简单直观的排序算法。它的工作原理是:首先在未排序序列中找到最小(或最大)元素,存放到排序序列的起始位置,然后,再从剩余未排序元素中继续寻找最小(或最大&#xff…

大模型学习笔记 - 第一期 - Milvus向量数据库

大模型学习笔记 - 向量数据库 目录 大模型学习笔记 - 向量数据库传统文字检索(无嵌入)面临的困境1. 用户和商户表述差异2. 不同语种的表述差异3. 不同背景下的音译表述差异 向量检索向量化服务 参考 传统文字检索(无嵌入)面临的困境 1. 用户和商户表述差异 ​ 如果商户维护了…

详细图文解读Transformer模型:《Attention is All You Need》完整版

目录 前言1、Transformer模型《Attention is All You Need》总结2、Transformer整体结构2.1、工作流程 3、Transformer的输入4、Self-Attention(自注意力机制)4.1、Self-Attention 结构4.2、Q, K, V计算4.3、Self-Attention 的输出4.4、Multi-Head Atten…

Hadoop•用Web UI查看Hadoop状态词频统计

听说这里是目录哦 通过Web UI查看Hadoop运行状态🐇一、关闭防火墙二、在物理计算机添加集群的IP映射三、启动集群四、进入HDFS的Web UI 词频统计🦩1、准备文本数据2、在HDFS创建目录3、上传文件4、查看文件是否上传成功5、运行MapReduce程序6、查看MapRe…