如何编译安装系统settings设置应用(5.0.0-Release)

news/2024/12/14 7:04:20/

本文介绍如何在OpenHarmony 5.0.0 r版本中修改系统设置应用,并且编译安装到开发板上

开发环境

1.dayu200开发板

2.OpenHarmony 5.0.0r 固件

3.API12 full sdk (如果安装full sdk过程中出现报错hvigor ERROR: Cannot find module 'typescript',请参考 https://forums.openharmony.cn/forum.php?mod=viewthread&tid=3012 。取消手动npm install 安装操作

3.DevEco Studio 4.1.0.400 (4.1 Release)

实现步骤

1.获取5.0.0r 设置应用源码

https://gitee.com/openharmony/applications_settings/tree/OpenHarmony-v5.0.0-Release/

2,使用 DevEco Studio 4.1 Release 和 API12 Full SDK对系统应用进行签名,默认工程是未配置签名的状态,所构建的包均为 unsigned 标记的HAP包,无法安装到 OpenHarmony 系统中。

  • 打开developtools_hapsigner仓库,进入 dist 目录,点击下载OpenHarmony.p12OpenHarmonyApplication.pem(pem文件若无法直接下载,可直接在目录中创建文件然后将内容拷贝到文件中)。

    image.png

  • 把下载好的文件放入工程目录的 signature 中。

    image.png

  • 签名文件配置:
    DevEco Studio 4.0 Release 版本界面化配置签名时,秘钥不允许配置8位以下纯数字秘钥,而标准签名文件的秘钥为123456 ,所以无法通过DevEco Studio 界面进行签名的配置。仅能使用手动配置build-profile.json5 文件方式,进行签名信息的配置。下载material包解压后放入signature 目录中,material 文件夹中存放的为加密文件,此包将给予签名工具验证秘钥时使用。

    image.png

  • 配置工程根路径build-profile.json5 文件,拷贝以下签名信息到配置文件中,其中storePassword 和keyPassword 为material 包与秘钥加密生成的数据,keyAlias 为固定值"OpenHarmony Application Release"。
      "signingConfigs": [{"name": "release","material": {"storePassword": "00000016D9DCF063F0FC4BBD0E7FE1E3B06A67C07BECE1BDD4E2A3EFDAE20F890810EC02AA2A","certpath": "signature/OpenHarmonyApplication.pem","keyAlias": "OpenHarmony Application Release","keyPassword": "00000016FD3897FD4C46940ED39FFC652872B7B18BEDCCA07400A6EBEE307C9C41B96DB6B64D","profile": "signature/settings.p7b","signAlg": "SHA256withECDSA","storeFile": "signature/OpenHarmony.p12"}}],
    

    image.png

  • 配置工程根路径build-profile.json5 文件products字段,特别是compatibleSdkVersion的值必须为12
      "products": [{"name": "default","signingConfig": "release","compileSdkVersion": 12,"compatibleSdkVersion": 12}
    
  • 构建安装验证
    单击 Build >Build Hap(s)/APP(s) > Build APP(s) 构建 SystemUI 工程HAP包。

    image.png

4.安装编译好的设置应用

  • 编译好的应用在\product\phone\build\default\outputs\default\phone-default-signed.hap
hdc file send phone-default-signed.hap /data
hdc shell
bm install -p /data/phone-default-signed.hap

image.png

参考文档

  • 如何在OpenHarmony 4.1R上设置系统默认不锁屏(修改系统锁屏应用)
  • https://laval.csdn.net/66ccdb860bfad230b8afe6c2.html@ohos.systemParameterEnhance系统参数接口调用:获取系统属性

http://www.ppmy.cn/news/1554955.html

相关文章

「Mac玩转仓颉内测版52」基础篇14 - 递归函数与尾递归优化

本篇详细讲解递归函数及其在仓颉语言中的实现,并介绍尾递归优化的优势。递归是解决分解问题的强大工具,但当递归深度过大时可能导致栈溢出。仓颉语言通过尾递归优化有效避免了这一问题。 关键词 递归函数尾递归尾递归优化栈溢出 一、什么是递归函数&…

Swift 的起源与发展历程:从诞生到繁荣

一、诞生背景 (一)苹果生态需求 iOS 与 macOS 发展瓶颈 旧语言性能局限:Objective-C 在 iOS 和 macOS 开发中逐渐暴露出性能瓶颈,尤其是在处理大量数据和复杂算法时效率低下。例如,在图形渲染和数据处理密集型应用中&…

AI生成图表化:深入探索Mermaid

引言 在使用生成式AI时,只要你提出让AI帮你生成mermaid图,AI的生成就会出现丰富的图形! 在现代文档编写中,图表的使用不仅能增强文档的可读性,还能更直观地表达复杂的概念和流程。Mermaid 作为一款开源的图表绘制工具…

React框架:解锁现代化Web开发的新维度

在当今前端开发领域,React 无疑是一颗璀璨的明星。React 是由 Facebook 开发的用于构建用户界面的 JavaScript 库,它在前端开发中占据着重要的地位,为开发者提供了一种高效、灵活且可维护的方式来构建复杂的用户界面。 一、React 的背景与开…

【C语言实现:用队列模拟栈与用栈模拟队列(LeetCode 225 232)】

LeetCode刷题记录 🌐 我的博客主页:iiiiiankor🎯 如果你觉得我的内容对你有帮助,不妨点个赞👍、留个评论✍,或者收藏⭐,让我们一起进步!📝 专栏系列:LeetCode…

[源码+调试+讲解]微信小程序的成都美食分享系统springboot

摘 要 当今社会已经步入了科学技术进步和经济社会快速发展的新时期,国际信息和学术交流也不断加强,计算机技术对经济社会发展和人民生活改善的影响也日益突出,人类的生存和思考方式也产生了变化。传统成都美食分享采取了人工的管理方法&am…

Spring Boot 简介与快速入门指南

目录 主要特点 核心组件 Spring Boot 应用的基本结构 1. 创建主应用类 2. 创建一个简单的控制器 3. 配置文件(application.properties) 如何运行 优势 总结 Spring Boot 是一个开源的 Java 框架,基于 Spring Framework,旨…

ip地址获取失败啥意思?ip地址获取失败怎么回事

在日常的网络使用中,我们时常依赖于稳定的IP地址来确保数据的顺畅传输和设备的正常识别。然而,有时我们会遇到“IP地址获取失败”的困扰,这不仅阻碍了我们的网络访问,还可能带来一系列的网络连接问题。那么,IP地址获取…