概述
文档环境
开发环境:Windows 11
DevEco Studio 版本:DevEco Studio 4.0 Release(4.0.0.600)
SDK 版本:4.0.10.15(Full SDK)
开发板型号:DAYU 200(RK3568)
系统版本:OpenHarmony-4.0-Release
示例工程:Applications_SystemUI
功能简介
OpenHarmony 开源社区提供了标准系统上的部分系统应用,如桌面、SystemUI、设置等,为开发者提供了构建标准系统应用的具体实例,这些应用支持在所有标准系统的设备上使用。本篇文档将介绍如何给这些系统应用进行签名,使它们可以正确的安装和运行在 OpenHarmony 系统上。本篇文档仅用于方便大家学习系统应用的开发和调试,不用做正式项目发布和商用使用。
系统应用目前包含如下:
1.Applications_Launcher:Launcher 作为系统人机交互的首要入口,提供应用图标的显示、点击启动、卸载应用,并提供桌面布局设置以及最近任务管理等功能。
2.Applications_SystemUI:SystemUI 应用是 OpenHarmony 中预置的系统应用,为用户提供系统相关信息展示及交互界面,包括系统状态、系统提示、系统提醒等,例如系统时间、电量信息。
3.Applications_Settings:设置应用是 OpenHarmony 系统中预置的系统应用,为用户提供设置系统属性的交互界面,例如设置系统时间,屏幕亮度等系统属性。
4.Applications_Camera:相机应用是 OpenHarmony 标准系统中预置的系统应用,为用户提供基础的相机拍摄功能,包括预览、拍照、摄像、缩略图显示、跳转相册、多机位协同。 Camera 采用纯 arkui-ts 语言开发。
5.Applications_Photos:图库是系统内置的可视资源访问应用,提供图片和视频的管理、浏览、显示、编辑操作等功能,并支持默认相册和用户相册管理。
除以上主要系统应用之外,还预置了一些简单的示例应用,如时钟、计算器、空气质量等,可供开发者参考学习。
系统应用签名
我们以相对较复杂的 Applications_SystemUI 项目为例,克隆 SystemUI 项目,使用 DevEco Studio 打开工程,查看当前工程的签名配置 build-profile.json5。
当前默认工程是未配置签名的状态,所构建的包均为 unsigned 标记的 HAP 包,无法安装到 OpenHarmony 系统中,下面我们分别使用 标准签名 和 自动签名 ,两种方式给 SystemUI 工程配置签名。
标准签名:配置简单,适用于工程中提供 p7b 签名文件的工程。
自动签名:配置较复杂,适用于工程中未提供 p7b 签名文件或 p7b 签名文件与系统配置不匹配的情况。
除以上两种方式外还可使用手动签名的方式生成签名文件给应用签名,此种方式更为复杂,但具有较高的灵活性,不在此篇文档中进行介绍。
标准签名
签名文件获取
拷贝 OpenHarmony 标准版工程签名文件到 SystemUI 工程的 signature 目录。打开 developtools_hapsigner 仓库,进入 dist 目录,点击下载 OpenHarmony.p12 和 OpenHarmonyApplication.pem(pem 文件若无法直接下载,可直接在目录中创建文件然后将内容拷贝到文件中)。
把下载好的文件放入工程目录的 signature 中。
签名文件配置
1.DevEco Studio 4.0 Release 版本界面化配置签名时,秘钥不允许配置 8 位以下纯数字秘钥,而标准签名文件的秘钥为 123456 ,所以无法通过 DevEco Studio 界面进行签名的配置。仅能使用手动配置 build-profile.json5 文件方式,进行签名信息的配置。下载 material 包解压后放入 signature 目录中,material 文件夹中存放的为加密盐文件,此包将给予签名工具验证秘钥时使用。
2.配置工程根路径 build-profile.json5 文件,拷贝以下签名信息到配置文件中,其中 storePassword 和 keyPassword 为 material 包与秘钥加密生成的数据,keyAlias 为固定值"OpenHarmony Application Release