美文网首页鸿蒙(HarmonyOS)开发知识@IT·互联网
OpenHarmony开发- 应用子系统/Launcher

OpenHarmony开发- 应用子系统/Launcher

作者: 迪士尼在逃程序员 | 来源:发表于2024-09-08 17:02 被阅读0次

    简介

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

    • product
      业务形态层:区分不同产品、不同屏幕的各形态桌面,含有桌面窗口、个性化业务,组件的配置,以及个性化资源包。

    • feature
      公共特性层:抽象的公共特性组件集合,可以被各桌面形态引用。

    • common
      公共能力层:基础能力集,每个桌面形态都必须依赖的模块。

    目录

    目录结构

    /applications/standard/launcher/
    ├── common                    # 公共能力层目录
    ├── docs                      # 开发指南
    ├── feature                   # 公共特性层目录
    │   └── appcenter             # 应用中心
    │   └── bigfolder             # 智能文件夹
    │   ├── form                  # 桌面卡片管理功能
    │   ├── gesturenavigation     # 手势导航
    │   ├── pagedesktop           # 工作区
    │   ├── recents               # 最近任务
    │   ├── settings              # 桌面设置
    │   ├── smartdock             # dock工具栏
    ├── product                   # 业务形态层目录
    ├── signature                 # 签名证书
    

    约束

    • 开发环境
      • DevEco Studio for OpenHarmony: 版本号大于3.0.0.900,下载安装OpenHarmony SDK API Version 9。(初始的IDE配置可以参考IDE的使用文档)
    • 语言版本
    • 建议
      • 推荐使用本工程下的launcher.p7b文件,路径:signature/launcher.p7b

    说明

    使用说明

    使用桌面卡片管理功能调试服务卡片

    开发调试

    IDE下载

    下附Windows环境下的链接,其他平台可依据版本号在开发者官网下载

    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需要重新下载,下载地址:

    新版本界面:http://ci.openharmony.cn/workbench/cicd/dailybuild/dailylist

    老版本界面:http://ci.openharmony.cn/dailys/dailybuilds

    示例:

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

    示例:

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

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

    代码下载

    1. git clone https://gitee.com/openharmony/applications_launcher.git
    2. 通过下载zip的方式直接下载

    签名配置

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

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

    调式编译

    注意

    使用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
    

    写在最后

    如果你觉得这篇内容对你还蛮有帮助,我想邀请你帮我三个小忙

    • 点赞,转发,有你们的 『点赞和评论』,才是我创造的动力。
    • 关注小编,同时可以期待后续文章ing🚀,不定期分享原创知识。
    • 想要获取更多完整鸿蒙最新学习知识点,请移步前往小编:https://gitee.com/MNxiaona/733GH/blob/master/jianshu

    相关文章

      网友评论

        本文标题:OpenHarmony开发- 应用子系统/Launcher

        本文链接:https://www.haomeiwen.com/subject/nozfxjtx.html