目录

鸿蒙应用开发学习1应用完整开发流程

鸿蒙应用开发学习1——应用完整开发流程

https://i-blog.csdnimg.cn/blog_migrate/6ee5787711af96b11d3fa9da5a10150c.png

1 注册华为开发者账号

进入鸿蒙官方网站:https://www.harmonyos.com/

推荐使用手机号注册

进行实名认证

2 开发工具

鸿蒙应用开发 : Java/JS/C++

鸿蒙设备开发:C/C++

这里我们重点介绍应用开发

https://i-blog.csdnimg.cn/blog_migrate/208e0c83ce187aa73ef6e4f638d28f63.png

安装路径不要有中文和空格。

settings的设置的使用

自动提示快捷键:ctrl+shift+空格

修改注释颜色为绿色

设置大小写自动配对补全

3 DevEco Studio 项目结构

https://i-blog.csdnimg.cn/blog_migrate/3174a93e6182a9bfe65f893fa1ecd670.png

https://i-blog.csdnimg.cn/blog_migrate/4e8f76915af5d700c1a4ba51c9c376d5.png

config.json类似manifest,配置app版本信息,权限等等。

4 鸿蒙入门应用

4.1 入门应用 Hello World

(1)运行项目

(1) 登录账号

点击右上角,sign in登录进去。

(2)运行模拟器

https://i-blog.csdnimg.cn/blog_migrate/1d4cadabdd9909ab95a2a2c547e658dc.png

https://i-blog.csdnimg.cn/blog_migrate/ffad52b731a799e768e711b06af8628f.png

(2)app中hap和ability关系

app里面有很多hap包。用户可以选择需要的hap包下载。

https://i-blog.csdnimg.cn/blog_migrate/cf2b9891e03b05970a91f7b0906529ec.png

在开发中,一个单独的功能(能力),对应着一个Ability。如果这个能力中需要进行切换,那么可以在Ability中,写多个子页面AbilitySlice进行切换。

页面中的包含关系:最外面是Ability,Ability中是一个或多个子页面:AbilitySlice

子页面中有要展示的内容:图片,文本等信息

(3)config.json 配置文件 介绍

跟应用相关的所有信息,都会在这个文件中配置。

https://i-blog.csdnimg.cn/blog_migrate/e49662665a2fb936f88a97e9e8c537ba.png

app里是这个项目的配置,

bundleName 是包名

vendor 公司信息

version 项目版本 name外部可以看到,code外部看不到

deviceConfig 需要配置设备的硬件权限等配置

module 代码中的配置信息

package 包名

name hap包的名字

mainAbility hap包的入口ability

deviceType 可以运行的设备,可以运行多种设备

distro [ deliveryWthInstall hap包是否可安装 moduleName hap包名称 moduleType hap类型 installationFree:当前hap是可以免费安装并运行]

abilities:每一个ability的配置信息。有多个ablitie,就需要每个都配置。我们主要修改就是这个地方。

(4)程序运行过程

https://i-blog.csdnimg.cn/blog_migrate/f420df9298e650bdfc6a7841810ca535.png

初始化的类是 com.example.myapplication中的MyApplication类。

https://i-blog.csdnimg.cn/blog_migrate/8f75c4d1da987266c084d9af2a3fdf8d.png

https://i-blog.csdnimg.cn/blog_migrate/9ed63201c611a2109d70879ac53740c3.png

https://i-blog.csdnimg.cn/blog_migrate/f45d0a6e7d5489d80965a418b5a38f6f.png

下面代码加载界面

https://i-blog.csdnimg.cn/blog_migrate/fa95b9a2d435316611b65752c9c1c0c5.png

加载子界面:

super.setMainRoute(MainAbilitySlice.class.getName());加载子界面

进入子界面MainAbilitySlice中后会加载一个配置文件

https://i-blog.csdnimg.cn/blog_migrate/60e72a9e24e9947008c3b6a4d7812fc7.png

https://i-blog.csdnimg.cn/blog_migrate/07d09772e8d6b20a7cf29294b79bd802.png

4.2 官方应用 页面跳转

https://i-blog.csdnimg.cn/blog_migrate/c649747fe439ea9734e5d13dbd790652.png

(1)组件

屏幕展现出来的元素都叫组件

例如 text文本框,按钮,图片,进度条等。

(2)布局

多个组件摆放的方式就是布局

比如:DirectionalLayout线性布局

布局就是一个容器,用来装组件的。每一个组件不能单独存在,必须添加到布局中才能显示出来。

(3)事件

事件是可以被组件识别的操作。

比如:单击事件、双击事件、长按事件、滑动事件