今日看点

鸿蒙简介以及从零开始开发一个HarmonyOS应用

发表于话题:HarmonyOS 2
发布时间:2021-06-02

鸿蒙简介以及从零开始开发一个HarmonyOS应用

文章目录

一、鸿蒙系统介绍二、从零开始开发一个鸿蒙harmonyOS应用 1.环境搭建2.项目工程结构介绍

一、鸿蒙系统介绍

HarmonyOS是一款“面向未来”、面向全场景(移动办公、运动健康、社交通信、媒体娱乐等)的分布式操作系统。在传统的单设备系统能力的基础上,HarmonyOS提出了基于同一套系统能力、适配多种终端形态的分布式理念,能够支持多种终端设备。HarmonyOS提供了支持多种开发语言的API,供开发者进行应用开发。支持的开发语言包括Java、XML(Extensible Markup Language)、C/C++ 、 JS(JavaScript)、CSS(Cascading Style Sheets)和HML(HarmonyOS Markup Language)。 

1、鸿蒙系统架构

HarmonyOS整体遵从分层设计,从下向上依次为:内核层、系统服务层、框架层和应用层。系统功能按照“系统 > 子系统 > 功能/模块”逐级展开,在多设备部署场景下,支持根据实际需求裁剪某些非必要的子系统或功能/模块,如下图所示。

2、鸿蒙系统技术特性

硬件互助,资源共享 一次开发,多端部署统一OS,弹性部署

二、从零开始开发一个HarmonyOS应用

1.环境搭建

1.1开发工具

Java:编译构建依赖JDK(版本>=1.8)

Node.js:应用于开发JS应用和运行预览器功能(版本>=12.0.0)

1.2开发工具下载配置

官网下载地址:https://hmxt.org/deveco-studio 提供windows和mac下载

下载完成后下一步安装

安装过程中出现问题可以点击官网查看

1.3配置sdk

Project Structure—>SDK Location,修改HarmonyOS SDK和Nodejs的位置

1.4配置SDK Platforms和SDK Tools

Apperance&Behavior—>System Settings—>HarmonyOS SDK,下载SDK Platforms和SDK Tools

1.5模拟器创建

目前鸿蒙调试可以使用真机或者华为提供的远程模拟器,真机目前需要开发者报名参加公测招募,审核通过后就可以收到HarmonyOS Beta版本的OTA推送升级(https://developer.huawei.com/consumer/cn/activity/301607581257578636)

模拟器创建需要认证开发者账号后即可使用远程的机器调试,点击Tools下的HVD Manager

然后选择需要调试的设备

启动P40远程模拟器,为了防止开发者滥用资源,每次启动仅有1小时使用时间,但时长结束后可以无限重启。

1.6创建第一个helloworld项目

打开DevEco Studio,依次点击:File—>New—>New Project,创建一个新项目,可以看到支持多种类型,默认选择手机下一步即可

什么都不需要修改单击运行,一个hellowrld就出现在了p40模拟器上,至此完成从零开始创建一个鸿蒙os应用

2.项目工程结构介绍

.gradle:Gradle配置文件,由系统自动生成,一般情况下不需要进行修改

entry:默认启动模块(主模块),开发者用于编写源码文件以及开发资源文件的目录

entry>libs:用于存放entry模块的依赖文件

entry>src>main>Java:用于存放Java源码

entry>src>main>resources:用于存放应用所用到的资源文件,如图形、多媒体、字符串、布局文件等

资源目录资源文件说明base>element包括字符串、整型数、颜色、样式等资源的json文件。每个资源均由json格式进行定义,例如:
boolean.json:布尔型
color.json:颜色
float.json:浮点型
integer.json:整形
pattern.json:样式
plural.json:复数形式
strarray.json:字符串数组
string.json:字符串值base>graphicxml类型的可绘制资源,如SVG(Scalable Vector Graphics)可缩放矢量图形文件、基本的几何图形(如矩形、圆形、线等)shape资源等base>layoutxml格式的界面布局文件。base>media多媒体文件,如图形、视频、音频等文件,支持的文件格式包括:.png.gif.mp3.mp4等。base>profile用于存储任意格式的原始资源文件。区别在于rawfile不会根据设备的状态去匹配不同的资源,需要指定文件路径和文件名进行引用rawfile用于存储任意格式的原始资源文件。区别在于rawfile不会根据设备的状态去匹配不同的资源,需要指定文件路径和文件名进行引用

**entry>src>main>config.json:**HAP清单文件

entry>src>test:编写代码单元测试代码的目录,运行在本地Java虚拟机(JVM)上

entry>.gitignore:标识git版本管理需要忽略的文件

entry>build.gradle:entry模块的编译配置文件

config.json属性介绍

设备开发对应语言:

设备语言PhoneJava、JSTabletJava、JSCarJava、C++TVJava、JSWearableJava、JSLite WearableJSSmart VersionJS

 

最后详细的资料可以参考华为开发者学院鸿蒙应用开发官方教学视频地址:https://developer.huawei.com/consumer/cn/training/paths/c1a74183-8245-4208-9c45-fa79367f06b2

 

标签组:[sdk

本文来源:https://www.kandian5.com/articles/24030.html

相关阅读

《吕氏春秋·慎行论》疑似赏析

【原文】使人大迷惑者,必物之相似者也。玉人之所患,患石之似玉者;相剑者之所患,患剑之似吴干②者;贤主之所患,患人之博闻辩言而似通者。亡国之主似智,亡国之臣似忠。相似之物,此愚者之所大惑,而圣人之所加虑...

2025-04-29

庄子《山木》寓言七:孔子穷于陈蔡之间

孔子穷于陈蔡之间原文:孔子穷于陈蔡之间,七日不火食,左据槁木,右击槁枝,而歌猋氏之风,有其具而无其数,有其声而无宫角,木声与人声,犁然有当于人之心。颜回端拱还目而窥之。仲尼恐其广己而造大也,爱己而造哀...

2025-04-29

庄子《山木》寓言五:孔子问子桑雽

孔子问子桑雽原文:孔子问子桑雽曰:“吾再逐于鲁,伐树于宋,削迹于卫,穷于商周,围于陈蔡之间。吾犯此数患,亲交益疏,徒友益散,何与?”子桑雽曰:“子独不闻假人之亡与?林回弃千金之璧,负赤子而趋。或曰:‘...

2025-04-29

庄子《山木》寓言六:庄子衣大布而补之

庄子衣大布而补之原文:庄子衣大布而补之,正緳系履而过魏王。魏王曰:“何先生之惫邪?”庄子曰:“贫也,非惫也。士有道德不能行,惫也;衣弊履穿,贫也,非惫也;此所谓非遭时也。王独不见夫腾猿乎?其得枏梓豫章...

2025-04-29

《吕氏春秋·慎行论》无义赏析

【原文】先王之于论也极之矣①。故义者,百事之始也,万利之本也,中智之所不及也。不及则不知,不知则趋利。趋利固不可必也②。公孙鞅、郑平、续经、公孙竭是已。以义动则无旷③事矣,人臣与人臣谋为奸,犹或与之④...

2025-04-29

庄子《山木》寓言四:孔子围于陈蔡之间

孔子围于陈蔡之间原文:孔子围于陈蔡之间,七日不火食。大公任往吊之曰:“子几死乎?”曰:“然”。“子恶死乎?”曰:“然。”任曰:“子尝言不死之道。东海有鸟焉,其名曰意怠。其为鸟也,翂翂翐翐,而似无能;引...

2025-04-29

《吕氏春秋·慎行论》慎行赏析

【原文】行不可不孰②。不孰,如赴深谿,虽悔无及。君子计行虑义,小人计行其利,乃不利。有知不利之利者,则可与言理矣。【注释】①慎行:行为要谨慎。本篇阐述的是漆雕学派的学说。②孰:通“熟”,精审,慎重考虑...

2025-04-29

《六韬·文韬·盈虚》赏析

【原文】文王问太公曰:“天下熙熙,一盈一虚,一治一乱,所以然者,何也?其君贤不肖不等乎?其天时变化自然乎?”太公曰:“君不肖,则国危而民乱,君贤圣则国安而民治,祸福在君不在天时。”文王曰:“古之贤君可...

2025-04-29

《六韬·文韬·明传》赏析

【原文】文王寝疾,召太公望,太子发在侧,曰:“呜呼!天将弃予,周之社稷将以属汝,今予欲师至道之言,以明传之子孙。”太公曰:“王何所问?”文王曰:“先圣之道,其所止,其所起,可得闻乎?”太公曰:“见善而...

2025-04-29

《六韬·文韬·国务》赏析

【原文】文王问太公曰:“原闻为国之大务,欲使主尊人安,为之奈何?”太公曰:“爱民而已。”文王曰:“爱民奈何?”太公曰:“利而勿害,成而勿败,生而勿杀,与而勿夺,乐而勿苦,喜而勿怒。”文王曰:“敢请释其...

2025-04-29