简介
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-loader
和sdk\10\js\build-tools\ace-loader
代码下载
- git clone https://gitee.com/openharmony/applications_launcher.git
- 通过下载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需要注意:
- 修改以下对应的文件内容
## 以下(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
为了能让大家更好的学习鸿蒙(HarmonyOS NEXT)开发技术,这边特意整理了《鸿蒙开发学习手册》(共计890页),希望对大家有所帮助:https://qr21.cn/FV7h05
《鸿蒙开发学习手册》:
如何快速入门:https://qr21.cn/FV7h05
- 基本概念
- 构建第一个ArkTS应用
- ……
开发基础知识:https://qr21.cn/FV7h05
- 应用基础知识
- 配置文件
- 应用数据管理
- 应用安全管理
- 应用隐私保护
- 三方应用调用管控机制
- 资源分类与访问
- 学习ArkTS语言
- ……
基于ArkTS 开发:https://qr21.cn/FV7h05
- Ability开发
- UI开发
- 公共事件与通知
- 窗口管理
- 媒体
- 安全
- 网络与链接
- 电话服务
- 数据管理
- 后台任务(Background Task)管理
- 设备管理
- 设备使用信息统计
- DFX
- 国际化开发
- 折叠屏系列
- ……
鸿蒙开发面试真题(含参考答案):https://qr18.cn/F781PH
鸿蒙开发面试大盘集篇(共计319页):https://qr18.cn/F781PH
1.项目开发必备面试题
2.性能优化方向
3.架构方向
4.鸿蒙开发系统底层方向
5.鸿蒙音视频开发方向
6.鸿蒙车载开发方向
7.鸿蒙南向开发方向