本文的计划是先系统介绍鸿蒙系统发展的相关制度内容,希望通过这些内容建立对鸿蒙系统发展制度的了解,最后给出一个最简单的介绍例子。根据指南的其余部分,同意下一步等。以完成安装。
本文的计划是先系统介绍鸿蒙系统发展的相关制度内容,希望通过这些内容建立对鸿蒙系统发展制度的了解,最后,来一个最简单的介绍例子。这不仅是自学,也有助于你了解鸿蒙系统发展的全貌。
之所以这样安排而不是直接写一个Helloworld的例子,是因为很多朋友开始直接学习helloworld的例子。虽然觉得自己入门了,但好像还是不太懂。所以,在开始之前,你要对鸿蒙系统发展相关的系统内容有一个全面的了解,做到“窥一斑而知全图”,然后再开始。我觉得这种方式对学习体系的构建和深入学习会大有裨益。
还是那句话,对于很多学编程的朋友,建议一定要重视这种全局和原理的研究。否则只会在框架建筑里砌墙,而不是设计建筑的整体画面。那你就真的只是个懂代码的农民了。
1.鸿蒙系统发展概况1.1鸿蒙系统发展概况根据不同的角度,可以有不同的分布:
1.宏观上可以分为三类:1)通用开发(应用app可安装,兼容安卓和鸿蒙系统),2)原子化服务(鸿蒙系统自己独有的免安装应用服务),3)智能设备开发(智能屏幕和可穿戴设备。华为最新的手表都已经支持安装和应用,可以说想象力无限,以后可以当微型手机用)。
2.开发语言方面,Java、JavaScript(用接口支持传统js和低量开发)、eTS(华为定义的声明式语言,其简洁的代码更符合开发习惯,华为自己宣传的更接近自然语义,更高效、简洁、跨平台,代码乍一看非常简洁易懂);
3、从发展内容看:
1)能力框架:包括1)能力(各种能力)、公共事件和通知(订阅、发布、通知等消息)、后台任务调度和控制(前台、后台、挂起等。)、线程管理(创建、等待、回收)、线程间通信(比如下载任务后通知其他线程应用)、剪贴板。
其中,最核心也是最重要的一个,将永远伴随着鸿蒙系统的发展,属于:能力。从字面上看,鸿蒙系统把各种设备的任何功能抽象为一种能力(能力,视频能力,美颜能力,夜视能力,对应上面的FA和PA)。
能力本身又分为页面能力(与接口相关的能力)、服务能力(服务能力,比如美颜功能)、数据能力(数据能力,应用与设备之间的数据共享);最后,它还包含一个意向,意向是物体之间信息传递的载体。当一个能力导航/切换到另一个能力时(比如外卖是饿了么联系里面的商家,饿了么商家显示能力,跳转到电话能力),可以通过意图实现——可以通过意图指定启动目标(这里是启动电话),并可以携带相关数据(这里直接是商家的电话)。
可以说,只要开发了任何内容,都必须使用和关心(线程和任务调度很重要,但不一定要使用)。
2)UI(界面开发):提供JavaUI(粒度更细,灵活性更强)和ArkUI(方舟开发框架),支持两种模式:基于JS扩展的类web开发范式和基于TS(华为自己定义的开发语言模型,简称华为自己的TS)扩展的声明式开发范式;这里简单理解为Ark开发框架提供了两种类似Java Web开发的开发方式,但是使用JS和TS;后面详细解释)、多模式输入(鼠标、键盘、触摸、语音等。).
3)多媒体:视频、摄像机、图像、音频、媒体对话和其他相关数据的管理。
4)安全性:权限管理(权限定义、应用和控制),生物识别(人脸和指纹识别)
5)AI:文字、图片、文档、语音等的识别和转换。、二维码生成等。;
6)网络和连接:NFC(查询支持、状态、卡模拟、消息通知)、WLAN、网络管理、电话服务等。
7)数据管理:关系数据库、对象映射数据库、分布式数据和文件服务(创建、打开、关闭、添加和删除、数据同步)、数据存储、融合搜索。
8)设备管理:可穿戴设备、智能屏幕、传感器(环境、运动等。)、位置、设备标识等。;
9)原子化服务:服务特性(免安装、快速直接、轻量级、夸耀设备和独立性)、服务发现、展示、分享和流通;
4.从主题来看,分为服务卡(直接展示应用核心内容,支持快速访问应用的FA页面)、循环(吹嘘设备循环,多终端协同)、华为共享(分享、收发)、平行视界(双窗口支持等。)
1.2鸿蒙系统app组织架构鸿蒙系统应用分为两类:已安装的应用和未安装的原子服务应用。
用户应用以App Pack的形式发布,其中包含一个或多个HAP(和声能力包)和一个描述每个HAP属性的pack.info。HAP是上述能力的部署包,鸿蒙系统的应用围绕能力组件展开。HAP由代码、资源、第三方库和配置组件组成。
HAP分为入口和特征两种。
Entry:是应用的主模块,可以包含一个或多个entry(它是一个HAP)类型的HAP,以支持不同规格的设备(如屏幕规格、API版本等。).
特性:应用动态特性模块(也是HAP,相对于entry表示的固定屏幕尺寸,Feature代表动态调度特性)。一个应用程序可以包含N(N>=0)个功能。
只有有能力的HAP才能独立运行。
此外,还有另一个HAR(鸿蒙系统能力资源),可以构建应用程序所需的所有内容。但是,HAR不能独立安装,只能作为应用模块的依赖来引用。
1.3其他内容1。开发工具:华为DevEco Studio,由华为提供的IntelliJ IDEA社区开源版本打造,与鸿蒙系统的各种开发调试深度融合,提供诸多方便易用的功能;此外,还提供DevEco服务,提供安全测试、云测试和远程真机测试;真机测试很周到,省去了项目开发后扫描漏洞和做压力并发测试,最良心的是提供远程真机测试。。。
2.测试:DevEco提供性能、安全性、兼容性、稳定性、功耗、循环等测试,以及单元测试框架、分布式UI测试框架、综合评分等。
3.可穿戴设备:1)智能可穿戴设备是指配备鸿蒙系统的手表。目前只有华为Watch 3。可以去手表商城看看,大概就知道支持哪些功能和应用场景了(支持多场景交互和应用安装);2)轻量级智能穿戴设备,目前支持华为WATCH GT 2 Pro(消息通知,与手机内容交互,由于不是鸿蒙系统,应用较弱)。
佩戴装置与许多皮带一起列出。两者的核心区别(困扰我很久的智能和轻量级智能有什么区别)是鸿蒙系统和非鸿蒙系统。在最新的WATCH 3中,已经支持高德地图、喜马拉雅、新浪新闻、腾讯体育、旅游地平线等。在手表上安装应用程序真的很令人兴奋,鸿蒙系统是未来的趋势。下图是华为Watch 3鸿蒙系统手表里的各种app,看得我口水直流。真的很贴心。...
4.开放和谐与鸿蒙系统的关系
这是两者的区别。
OpenHarmony是鸿蒙系统操作系统的开源版本,免费开源,而鸿蒙系统本身是开源的;两者的关系:OpenHarmony相当于Android,鸿蒙系统相当于小米的UI和华为的EMUI的关系;如果你很了解Linux,OpenHarmony相当于Linux的内核,鸿蒙系统相当于红帽、Ubuntu等发行版。任何厂商都可以用OpenHarmony,但其他手机厂商应该不能直接用鸿蒙系统;至少前者是开源的,任何人都可以无条件使用,而后者只有在华为需要和华为签订一些协议的情况下才能使用。
OpenHarmony是基础,我们前面说的大部分底层特性都是OpenHarmony的特性,鸿蒙系统是在OpenHarmony的基础上开发的;OpenHarmony不能直接使用(连提供的接口都是最初级最基础的东西),只有基于它开发定制才能得到可用的鸿蒙系统。虽然OpenHarmony支持万物互联(各类设备,冰箱、热水器、洗衣机、豆浆机等。),华为没有那么多精力(以冰箱为例,华为在冰箱使用场景上既不专业,也无法避免与冰箱厂商的竞争)。在华为OpenHarmony基础上开发的鸿蒙系统,只覆盖自己擅长的核心领域:手机、电视、可穿戴设备等。,而其他领域的万物协作和智能应用都是各自厂商开发的;比如美的基于OpenHarmony打造的物联网操作系统。这样分工明确,相辅相成——共同构建一个真正互联互通的万物生态。有兴趣的同学可以思考一下美。没事做?可以简单的说,美的的设备使用更简单但更智能。
因为美的的物联网操作系统与鸿蒙系统同源,数据协同、系统同步、互联互通天生容易;这是鸿蒙系统最强大和最有前途的地方。
以上内容是对鸿蒙系统发展内容重要部分的粗略梳理,难免存在一些不准确和错误;接下来,输入helloworld示例。
2.开发前的准备(环境配置)2.1例1概述。鸿蒙系统支持多种开发模式和语言,包括eTS、Java、JS(支持传统JS代码和低量代码)。官方提供了四个例子。这里以JS为例。只有能跑能进门,才能看出都差不多;
2.最好有Java,JS,mobile其中一个的开发基础。如果没有建议从JS开始练,应该是最容易入门的。
3.官网HelloWold的例子是A页点击跳转到B页;同时,你可以参考官网的HelloWorld范例:官方介绍的鸿蒙系统发展HelloWorld范例。
2.2环境准备2.2.1注册为个人/团队开发者。在开发、创建和发布应用之前,需要在官网——华为开发者联盟注册成为开发者。可以选择个人开发者,也可以选择企业开发者,权益上有些区别。注册后需要实名认证,可以按要求填写。详见官方文件:华为开发者注册及实名认证。
2.2.2下载并安装devco studio开发工具1。去官网下载开发工具DevEco Studio 3。下载地址是华为操作系统DevEco Studio和SDK下载升级。
2.获取一个exe文件,开始下一步和下一步的自动安装。
3.配置开发环境
1)设置npm注册表:第一次启动时会进入配置向导页面,对应的仓库地址已经内置到DevEco Studio中。单击此处的下一步。
2)DevEco Studio向导引导开发者下载SDK,默认下载OpenHarmony SDK。可以根据剩余的指导下一步、同意等来完成安装。
但是默认的OpenHarmony SDK不是我们需要的,我们需要的是Harmony SDK。
在DevEco Studio的欢迎界面,在欢迎页面点击配置>设置> SDK管理器> harmony OS legacy SDK,然后点击编辑设置鸿蒙系统SDK存储路径。
注意:默认路径要和上一步的OpenHarmony一样,必须更改,否则OpenHarmony会被删除。另外SDK等内容较大,不建议使用c盘。
根据自己检查的API版本和语言安装接口。
如果您还需要更新SDK和其他版本,只需检查这里,然后单击应用。
用DevEco Studio打开项目,点击文件>设置> SDK管理器> harmony OS legacy SDK进入当前界面。
3)配置HDC工具环境变量
HDC是一个调试工具,为开发人员提供鸿蒙系统应用程序。为了方便HDC工具的使用,请为HDC工具的端口号设置环境变量。
Windows环境变量设置方法:在我的电脑>属性>高级系统设置>高级>环境变量中,添加HDC端口变量。变量名为HDC_SERVER_PORT,变量值设置为7035。
至此,一切准备工作已经完成,接下来新的Helloworld项目终于开始了。
2.3创建并运行默认程序。1.创建空项目创建项目。选择JS,Phone here,然后完成。
此时,你可以得到一个可以直接点击运行的空项目,你可以打印你的好页面。接下来,使用模拟器运行它以查看效果,然后转换示例。
2.添加虚拟模拟器。
华为的模拟器分为本地虚拟模拟器和远程真机(特别良心)。
1)添加本地虚拟机模拟器
A.在DevEco Studio的菜单栏中,点击进入文件>设置> deveco labs >仿真器选项卡,勾选“启用本地仿真器”,点击确定。
B.单击“文件”>“设置”>“SDK管理器”>“harmony OS legacy SDK”选项卡,在“工具”下的“平台和仿真器”“X86资源”下检查并下载system -映像。
c、创建本地模拟器
单击菜单栏中的Tools > Device Manager,在Local Emulator选项卡中,单击右下角的New Emulator按钮创建一个本地仿真器。您还可以修改和配置与创建虚拟机相关的信息,如CPU、DPI等。接下来。
D.启动本地虚拟机,会得到一个模拟黑框手机(不截图);现在我在等着运行程序。
2)调用远程真机。
虚拟机配置旁边有一个“远程仿真器”,意思是运行真机。需要注册的华为开发者账号即可使用;为了节省资源,每台真机需要1小时使用;断开1小时以上可以继续使用。
3.运行创建的默认程序。
启动本地或/和远程真机,选择进入运行程序;我这里例子的截图是本地虚拟机;本地和远程都可以尝试;远程更方便更容易。
2.4通过传统的JS代码定制一个HelloWorld程序。1.修改索引页面(当项目被创建时,它已经存在,所以它是主页)
在项目窗口中,选择“条目> src > main > js >默认>页面>索引”来修改代码:
World/* index.css content */。容器{ flex -方向:列;/*设置容器中项目的垂直排列*/justify -content:center;/*将项目设置在容器主轴的中心*/align -items:center;/*项目在横轴上居中*/宽度:100%;身高:100%;}/*用class="text "*/设置组件的样式。text { font -size:42px;}/*用class="button "*/设置组件样式。按钮{宽度:240px高度:60pxbackground -color:# 007 dff;font -大小:30pxtext -颜色:白色;margin -top:20px;}// index.js内容从“@ system.router”导入路由器;导出默认{ launch(){ router . push({ uri:" pages/details/details ",//指定要跳转的页面}}} 2。创建第二个跳转页面。
在项目窗口中,打开“entry > src > main > js > default”,右键单击“pages”文件夹,选择“New > JS Page”并命名为“detail”,这样就会创建一个detail文件夹,下面有三个文件:detail.html、detail.js和detail.css,具体目录结构如下:
修改代码HITHERE/* detail.css */。容器{ flex -方向:列;justify -内容:居中;align -项:居中;宽度:100%;身高:100%;}.text { font -size:42px;text-align:居中;} 3.使用真实机器或本地模拟来运行程序以显示效果。
最后,由于是我第一次接触鸿蒙系统,以上内容基本上是对鸿蒙系统官方发展文件的整理。许多内容直接引用甚至抄袭鸿蒙系统的官方文件。一开始不得不,但也加入了一些自己的想法和想法!写完整篇文章,感觉已经把最基本的鸿蒙系统理顺了,因为就算是抄,也要思考如何形成一篇通顺、完整、易懂的文章!思考和动手才是真正的学习过程,供你参考!
评论前必须登录!
注册