头图

简介

Launcher 作为系统人机交互的首要入口,提供应用图标的显示、点击启动、卸载应用,并提供桌面布局设置以及最近任务管理等功能。
Launcher 采用 扩展的TS语言(ArkTS)开发,主要的结构如下: 

  • product 业务形态层:区分不同产品、不同屏幕的各形态桌面,含有桌面窗口、个性化业务,组件的配置,以及个性化资源包。
  • feature 公共特性层:抽象的公共特性组件集合,可以被各桌面形态引用。
  • common 公共能力层:基础能力集,每个桌面形态都必须依赖的模块。

约束

  • 开发环境

    • DevEco Studio for OpenHarmony: 版本号大于3.0.0.900,下载安装OpenHarmony SDK API Version 9。(初始的IDE配置可以参考IDE的使用文档)
  • 语言版本

    • [ArkTS]
  • 建议

    • 推荐使用本工程下的launcher.p7b文件,路径:signature/launcher.p7b

开发调试

IDE下载

[DevEco Studio 3.1 Beta2],即3.1.0.400版本的IDE(推荐)

[DevEco Studio 3.1 Beta1],即3.1.0.200版本的IDE(推荐)

[DevEco Studio 3.0 Beta3 for OpenHarmony],即3.0.0.900版本的IDE(不推荐调试使用,仅推荐配置签名时用)

SDK使用说明及下载地址

Launcher应用的编译需使用相对应版本的ohos-sdk-full\mac-sdk-full来进行开发调试

IDE上是Public SDK,故full sdk需要重新下载。

示例:

下载下来的sdk需要做对应的处理才可正常使用,下载出来文件如图:

示例:

新建文件夹名为sdk的目录,在sdk下新建名为

的文件夹,将下载出来这几个包解压到10的目录下,解压完成后,需要进入到其中两个目录下执行npm install,这两个目录分别是:sdk\10\ets\build-tools\ets-loadersdk\10\js\build-tools\ace-loader

签名配置

OpenHarmony.p12和OpenHarmonyApplication.cer文件可在[签名工具仓]获取,OpenHarmonyApplication.cer文件是由OpenHarmonyApplication.pem修改后获得。launcher.p7b:推荐使用本工程下的launcher.p7b文件,路径:signature/launcher.p7b

如需通过IDE来进行手工配置签名,则需先使用3.0.0.900版本的IDE来进行配置(如下图),配置完成后可以使用新版本的IDE进行打开做其他操作。

鸿蒙OpenHarmony知识更新在gitee.com/li-shizhen-skin/harmony-os/blob/master/README.md学习参考。

QQ截图20240220212906.png

调式编译

注意

使用[DevEco Studio 3.1 Beta2],即3.1.0.400版本的IDE需要注意:

  1. 修改以下对应的文件内容
## 以下(feature/settings/build-profile.json5)文件内容修改为
{
  "apiType": 'stageMode',
  "buildOption": {
  },
  "targets": [
    {
      "name": "default",
      "runtimeOS": "OpenHarmony"
    }
  ],
  "entryModules": ["pad_launcher", "phone_launcher"]
}
## 以下(product/pad/build-profile.json5,product/phone/build-profile.json5)两个文件内容修改为
{
  "apiType": 'stageMode',
  "buildOption": {
  },
  "targets": [
    {
      "name": "default",
      "runtimeOS": "OpenHarmony"
    }
  ]
}

使用IDE上方的构建命令进行编译自己本地的代码

部件更新

示例: 使用以下命令来更新编译出来的Launcher部件hap包

ren phone_launcher-default-signed.hap Launcher.hap
ren launcher_settings-phone_launcher-default-signed.hap Launcher_Settings.hap

hdc target mount
hdc shell rm -rf /data/misc_de/0/mdds/0/default/bundle_manager_service
hdc shell rm -rf /data/accounts
hdc shell mount -o remount,rw /
hdc file send .\Launcher.hap /system/app/com.ohos.launcher/Launcher.hap
hdc file send .\Launcher_Settings.hap /system/app/com.ohos.launcher/Launcher_Settings.hap

pause

hdc shell mount -o remount,rw /
hdc shell rm /data/* -rf
hdc shell sync /system/bin/udevadm trigger
hdc shell reboot

烧脑猴
24 声望21 粉丝

5年JAVA,3年Android。现转入鸿蒙开发行业,每日分享一些鸿蒙技术!