当前位置: 首页 > news >正文

HarmonyOS Next应用开发之系统概述

一、鸿蒙系统概述

鸿蒙系统可以分为华为鸿蒙系统(HUAWEI HarmonyOS)和开源鸿蒙系统(OpenHarmony),华为鸿蒙系统是基于OpenHarmony基础之上开发的商业版操作系统。他们二者的关系可以用下图来表示:
在这里插入图片描述

1.1、OpenHarmony

官网:
OpenHarmony操作系统整体遵从分层设计,从下向上依次为:内核层、系统服务层、框架层和应用层。系统功能按照“系统 > 子系统 > 组件”逐级展开,在多设备部署场景下,支持根据实际需求裁剪某些非必要的组件。OpenHarmony技术架构如下所示:
在这里插入图片描述
上图展示了OpenHarmony系统所具备的能力,这些能力都是给开发者系统的基础系统能力。比如,我想基于OpenHarmony开发一款智能电饭煲,电饭煲系统中不需要电话和联系人的功能,那么在开发这个系统的时候,为了降低系统对硬件资源的消耗,可以删掉联系人和电话的功能,保留电饭煲所需系统能力即可。

因为OpenHarmony是开源系统,在遵循开源协议的前提下,都可以对OpenHarmony进行定制化开发。但是Huawei HarmonyOS属于商业版操作系统,不支持定制化开发。所以,你如果想开发一款属于自己风格的操作系统,可以基于OpenHarmony进行系统应用层的定制化开发。

因为本系列文章,主要讲解的是鸿蒙系统应用开发,这也包括基于OpenHarmony的应用开发。

OpenHarmony应用层包括系统应用和第三方非系统应用。

OpenHarmony可以被任何厂商和个人使用。

1.2、Huawei HarmonyOS

华为HarmonyOS是基于OpenHarmony基础之上研发而来,是一款商业操作系统。 简单举个例子,华为HarmonyOS好比是精装房,而OpenHarmony就是毛坯房,但是他们的户型是一模一样的。华为HarmonyOS上面的应用程序、体验感更好,就好比你进入了一个精装的家一样。

华为HarmonyOS 和 OpenHarmony的应用开发,都是基于ArkTS来完成,因此其应用开发模式和语言都是一模一样的。

华为HarmonyOS目前只有华为公司能使用。

二、南向和北向

业内,将鸿蒙硬件方向的开发称之为“南向开发”,而将鸿蒙应用方向的开发称之为”北向开发“。目前华为HarmonyOS的南向开发都是在华为公司内部完成,如果是个人爱好,想进行南向开发,可以看OpenHarmony官网提到的硬件开发指南(如下图所示)。
在这里插入图片描述

三、总结

1、个人如果想开发智能硬件设备(南向开发),应该看OpenHarmony的官网,可以进行定制化的系统烧录。
2、如果是应用开发者(北向开发),可以看华为HarmonyOS官网或者OpenHarmony官网都可以。

相关文章:

  • 北京网站建设多少钱?
  • 辽宁网页制作哪家好_网站建设
  • 高端品牌网站建设_汉中网站制作
  • Flink 提交作业的方式
  • dataX入门
  • 科研绘图系列:R语言双侧条形图(bar Plot)
  • STM32的独立看门狗详解
  • 玄机——第五章 linux实战-CMS01 wp
  • GEE代码实例教程详解:降水量分类分析
  • Memcached 介绍与详解及在Java Spring Boot项目中的使用与集成
  • 开发个人Ollama-Chat--5 模型管理 (二)
  • Java数据结构-链表与LinkedList
  • 触摸屏虚拟键盘组件 jQuery Virtual Keyboard使用 自定义键盘
  • 阿里巴巴矢量图标库使用
  • 梯度下降算法的原理
  • allWebPlugin中间件实现ActiveX插件在谷歌、火狐、Edge浏览器使用
  • C++:从C语言过渡到C++
  • C++:C++入门基础|命名空间|输入输出
  • 《微软的软件测试之道》成书始末、出版宣告、补充致谢名单及相关信息
  • Android Volley源码解析
  • Docker入门(二) - Dockerfile
  • JDK 6和JDK 7中的substring()方法
  • JSDuck 与 AngularJS 融合技巧
  • Mac转Windows的拯救指南
  • python docx文档转html页面
  • Twitter赢在开放,三年创造奇迹
  • VirtualBox 安装过程中出现 Running VMs found 错误的解决过程
  • webpack4 一点通
  • 从PHP迁移至Golang - 基础篇
  • 第十八天-企业应用架构模式-基本模式
  • 深入 Nginx 之配置篇
  • 使用common-codec进行md5加密
  • 试着探索高并发下的系统架构面貌
  • 一个完整Java Web项目背后的密码
  • 译米田引理
  • 与 ConTeXt MkIV 官方文档的接驳
  • - 转 Ext2.0 form使用实例
  • 2017年360最后一道编程题
  • Java总结 - String - 这篇请使劲喷我
  • NLPIR智能语义技术让大数据挖掘更简单
  • 带你开发类似Pokemon Go的AR游戏
  • 第二十章:异步和文件I/O.(二十三)
  • 你学不懂C语言,是因为不懂编写C程序的7个步骤 ...
  • 如何在招聘中考核.NET架构师
  • ​flutter 代码混淆
  • !!【OpenCV学习】计算两幅图像的重叠区域
  • (10)ATF MMU转换表
  • (19)夹钳(用于送货)
  • (delphi11最新学习资料) Object Pascal 学习笔记---第8章第5节(封闭类和Final方法)
  • (Note)C++中的继承方式
  • (附源码)springboot“微印象”在线打印预约系统 毕业设计 061642
  • (附源码)ssm码农论坛 毕业设计 231126
  • (机器学习-深度学习快速入门)第三章机器学习-第二节:机器学习模型之线性回归
  • (力扣记录)235. 二叉搜索树的最近公共祖先
  • (十)Flink Table API 和 SQL 基本概念
  • (淘宝无限适配)手机端rem布局详解(转载非原创)
  • (转)Groupon前传:从10个月的失败作品修改,1个月找到成功
  • (转)Linq学习笔记