HarmonyOS实战[一]——原理概念介绍安装:基础篇
【本文正在参与"有奖征文|HarmoneyOS征文大赛"活动】
相关文章:
HarmonyOS实战[一]——原理概念介绍安装:基础篇
HarmonyOS实战[二]—超级详细的原子化服务体验[可编辑的卡片交互]快来尝试吧
1.HarmonyOS简单介绍
HarmonyOS有三大特征:
- 搭载该操作系统的设备在系统层面融为一体、形成超级终端,让设备的硬件能力可以弹性扩展,实现设备之间硬件互助,资源共享。
对消费者而言,HarmonyOS能够将生活场景中的各类终端进行能力整合,实现不同终端设备之间的快速连接、能力互助、资源共享,匹配合适的设备、提供流畅的全场景体验。
- 面向开发者,实现一次开发,多端部署。
对应用开发者而言,HarmonyOS采用了多种分布式技术,使应用开发与不同终端设备的形态差异无关,从而让开发者能够聚焦上层业务逻辑,更加便捷、高效地开发应用。
- 一套操作系统可以满足不同能力的设备需求,实现统一OS,弹性部署。
对设备开发者而言,HarmonyOS采用了组件化的设计方案,可根据设备的资源能力和业务特征灵活裁剪,满足不同形态终端设备对操作系统的要求。
HarmonyOS提供了支持多种开发语言的API,供开发者进行应用开发。支持的开发语言包括Java、XML(Extensible Markup Language)、C/C++ 、 JS(JavaScript)、CSS(Cascading Style Sheets)和HML(HarmonyOS Markup Language)。
1.1 技术架构
HarmonyOS整体遵从分层设计,从下向上依次为:内核层、系统服务层、框架层和应用层。系统功能按照“系统 > 子系统 > 功能/模块”逐级展开,在多设备部署场景下,支持根据实际需求裁剪某些非必要的子系统或功能/模块。HarmonyOS技术架构如下所示。
1.2 内核层
- 内核子系统:HarmonyOS采用多内核设计,支持针对不同资源受限设备选用适合的OS内核。内核抽象层(KAL,Kernel Abstract Layer)通过屏蔽多内核差异,对上层提供基础的内核能力,包括进程/线程管理、内存管理、文件系统、网络管理和外设管理等。
- 驱动子系统:硬件驱动框架(HDF)是HarmonyOS硬件生态开放的基础,提供统一外设访问能力和驱动开发、管理框架。
1.3 系统服务层
系统服务层是HarmonyOS的核心能力集合,通过框架层对应用程序提供服务。该层包含以下几个部分:
- 系统基本能力子系统集:为分布式应用在HarmonyOS多设备上的运行、调度、迁移等操作提供了基础能力,由分布式软总线、分布式数据管理、分布式任务调度、方舟多语言运行时、公共基础库、多模输入、图形、安全、AI等子系统组成。其中,方舟运行时提供了C/C++/JS多语言运行时和基础的系统类库,也为使用方舟编译器静态化的Java程序(即应用程序或框架层中使用Java语言开发的部分)提供运行时。
- 基础软件服务子系统集:为HarmonyOS提供公共的、通用的软件服务,由事件通知、电话、多媒体、DFX(Design For X) 、MSDP&DV等子系统组成。
- 增强软件服务子系统集:为HarmonyOS提供针对不同设备的、差异化的能力增强型软件服务,由智慧屏专有业务、穿戴专有业务、IoT专有业务等子系统组成。
- 硬件服务子系统集:为HarmonyOS提供硬件服务,由位置服务、生物特征识别、穿戴专有硬件服务、IoT专有硬件服务等子系统组成。
根据不同设备形态的部署环境,基础软件服务子系统集、增强软件服务子系统集、硬件服务子系统集内部可以按子系统粒度裁剪,每个子系统内部又可以按功能粒度裁剪。
1.4 框架层
框架层为HarmonyOS应用开发提供了Java/C/C++/JS等多语言的用户程序框架和Ability框架,两种UI框架(包括适用于Java语言的Java UI框架、适用于JS语言的JS UI框架),以及各种软硬件服务对外开放的多语言框架API。根据系统的组件化裁剪程度,HarmonyOS设备支持的API也会有所不同。
1.5 应用层
应用层包括系统应用和第三方非系统应用。HarmonyOS的应用由一个或多个FA(Feature Ability)或PA(Particle Ability)组成。其中,FA有UI界面,提供与用户交互的能力;而PA无UI界面,提供后台运行任务的能力以及统一的数据访问抽象。FA在进行用户交互时所需的后台数据访问也需要由对应的PA提供支撑。基于FA/PA开发的应用,能够实现特定的业务功能,支持跨设备调度与分发,为用户提供一致、高效的应用体验。
2.什么是原子化服务
在万物互联时代,人均持有设备量不断攀升,设备和场景的多样性,使应用开发变得更加复杂、应用入口更加丰富。在此背景下,应用提供方和用户迫切需要一种新的服务提供方式,使应用开发更简单、服务(如听音乐、打车等)的获取和使用更便捷。为此,HarmonyOS除支持传统方式的需要安装的应用外,还支持提供特定功能的免安装的应用(即原子化服务)。
原子化服务是HarmonyOS提供的一种面向未来的服务提供方式,是有独立入口的(用户可通过点击方式直接触发)、免安装的(无需显式安装,由系统程序框架后台安装后即可使用)、可为用户提供一个或多个便捷服务的用户应用程序形态。例如:某传统方式的需要安装的购物应用A,在按照原子化服务理念调整设计后,成为由“商品浏览”“购物车”“支付”等多个便捷服务组成的、可以免安装的购物原子化服务A*。
原子化服务基于HarmonyOS API开发,支持运行在1+8+N设备上,供用户在合适的场景、合适的设备上便捷使用。原子化服务相对于传统方式的需要安装的应用形态更加轻量,同时提供更丰富的入口、更精准的分发。
原子化服务由1个或多个HAP包组成,1个HAP包对应1个FA或1个PA。每个FA或PA均可独立运行,完成1个特定功能;1个或多个功能(对应FA或PA)完成1个特定的便捷服务。
3.安装JDK1.8
3.1安装JDK1.8
jdk-8u121-windows-x64 下载链接:https://pan.baidu.com/s/1Y-Pee34HYDImNbDkQwuukg
提取码:e18w
一直下一步就好路径更改为自己想安装的就行
3.2 配置环境变量:
鼠标右击这台电脑,点击属性,点击高级系统设置。点击环境变量,新建变量名字为java_home,变量值为JDK安装路径,点击确定。系统变量中出现path,JDK配置完成。
点击确定,配置完成。
完成后调出cmd界面查看jdk安装是否成功输入java -version,出现如下证明安装成功
输入javac 出现如下证明安装成功
4. 安装鸿蒙
官网链接:https://www.harmonyos.com/cn/home/
安装鸿蒙开发者助手
把路径添加进来
等待安装完毕即可
打开DevEco
nmp配置界面,不用修改路径,直接点击“Start Using DevEco Studio”。配置HarmonyOS SDK,
需要下载的内容
选择“Accept”,点击“Next”。
等待安装,安装过程会持续十几分钟。
安装成功。
安装教程到此结束,下面开始第二节服务卡
【本文正在参与"有奖征文|HarmoneyOS征文大赛"活动】
HarmonyOS实战[一]——原理概念介绍安装:基础篇相关推荐
- 调试器工作原理系列一: 基础篇
调试器工作原理系列一: 基础篇 本文是一系列探究调试器工作原理的文章的第一篇.我还不确定这个系列需要包括多少篇文章以及它们所涵盖的主题,但我打算从基础知识开始说起. 关于本文 我打算在这篇文章中介绍关 ...
- Web服务器工作原理详解(基础篇)
概述:Web服务器概念较为广泛,我们最常说的Web服务器指的是网站服务器,它是建立在Internet之上并且驻留在某种计算机上的程序.Web服务器可以向Web客户端(如浏览器)提供文档或其他服务,只要 ...
- Nosql之Redis的概念介绍+安装配置+Redis数据库基本操作
文章目录 关系数据库与非关系型数据库介绍 关系数据库 非关系型数据库 非关系型数据库产生背景 Redis介绍 Redis 简介 Redis 优点 Redis安装部署 Redis数据库的基本操作 set ...
- Go语言介绍 安装 基础命令(一)
1 介绍 Go 即 Golang,是Google公司2009年11月正式对外公开的一门编程语言. 应用领域:WEB开发.区块链开发.大型游戏服务端开发.分布式/云计算开发 2 安装 下载: 官网:ht ...
- Python之Numpy入门实战教程(1):基础篇
Numpy.Pandas.Matplotlib是Python的三个重要科学计算库,今天整理了Numpy的入门实战教程.NumPy是使用Python进行科学计算的基础库. NumPy以强大的N维数组对象 ...
- ipsec VPN 技术介绍(基础篇一)
1,什么是ipsec ipsec(Internet Protocol Security)是一直种实现vpn的技术之一,为IP网络提供安全和加密. (由于IP报文本身没有集成任何的安全特性,IP数据包在 ...
- 计算机硬件 系统安装维护教程 02安装基础篇-01:启动热键、BIOS与UEFI
文章目录 启动热键 BIOS与UEFI 启动热键 实际上来讲他可能不叫这名,但是大家都这么叫,而且我也确实不知道还有什么更合适的,如果有,我会在以后更新此文档. 首先,我们要先知道什么是启动热键,他是 ...
- mysql实战45讲(01-08)基础篇笔记
仅仅是笔记,用于自己理解 01mysql结构 02 日志(redo log(重做日志)和 binlog(归档日志)) redolog与binlog区别作用:https://www.jianshu.co ...
- C语言发展史和基础语法介绍(基础篇)
文章目录 前言 什么是C语言? C语言简介 发展史 语言特点 主要特点 特有特点 缺点 变量与常量 变量 什么是变量? 作用域 生命周期 全局变量 局部变量 常量 什么是常量? 字面常量 cosnt修 ...
最新文章
- 秋招要跪?不怕!领走这份机器学习求职攻略
- 如何使用 autofs 挂载 NFS 共享
- 双圆环环布带系法图解_库卡(kuka)机械臂KR210结构图解
- 机器学习 文本分类 代码_无需担心机器学习-如何在少于10行代码中对文本进行分类
- docker 安装部署 Jenkins 2.322
- C#设计学生成绩排序
- 重构职场竞争力之测试跨界思维
- TCP/UDP通信解疑
- ios查看帧率的软件_iOS显示当前页面帧数
- $.ajax.submit,jQuery中的AjaxSubmit使用讲解
- 利用python第三方库过抖音小店后台滑块
- cookie的保存 jq,如何使用jQuery读取Cookie并将其存储在变量中?
- 对计算机硬盘格式化,电脑硬盘格式化和快速格式化的区别
- java熟人_英语中对各种不同程度关系的朋友是怎么表示的(就像汉语里有泛泛之交、熟人、朋友、死党之类的)?...
- 在CheckiO上熟悉编程
- Android开发:如何隐藏自己的app应用
- ISO认证证书上常见的认可标志
- 批量重命名 将中文名称翻译成英文名称的操作方法
- 牛客--卡牌游戏 (概率DP 逆推) P2059
- 2018最新前端面试题(2)
热门文章
- 视频怎么抠像?这个方法很好用
- sklearn使用实践之对moons数据集进行决策树训练并优化模型
- 全国计算机二级java模拟,全国计算机二级java模拟试题.doc
- cocoscreatorbox2d密度,摩擦系数,弹性值
- 配置数据库连接池使用之JNDI的方式
- Cue Club 更新补丁
- 快速了解什么是“云打印”
- 【数据库】已知关系模式:S(Sno,Sname,Sclass),C(Cno,Cname,Cteacher),SC(Sno,Cno,Scgrade)。其中,S为学生关系:Sno学号, Sname姓名
- python 上位机直接与西门子变频器建立通信
- 打车/网约车、代驾、顺风车/拼车/快车/专车(含市内和城际)、货运(小程序、APP(安卓/苹果)、公众号、H5网页)