OpenHarmonyOpenHarmony-简介-HarmonyOS-OpenHarmony-Android-AOSP-对比关联-鸿蒙开发者定位及使用的开发语言和开发工具
【OpenHarmony】OpenHarmony 简介 ( HarmonyOS / OpenHarmony - Android / AOSP 对比关联 | 鸿蒙开发者定位及使用的开发语言和开发工具)
文章目录
一、OpenHarmony 简介
1、OpenHarmony 由来
OpenHarmony 官方网址 ;
OpenHarmony 是 开源的分布式操作系统 ,
由 华为公司 捐赠 智能终端操作系统 基础能力 相关代码 ,
由 开放原子开源基金会 ( OpenAtom Foundation ) 运营的开源项目 ,
其 目标 是 面向全场景 / 全连接 / 全智能时代 / 基于开源的方式 , 搭建一个 智能终端设备 操作系统 的框架和平台 ,
旨在实现全场景智能互联 , 可以应用于智能手机 / 平板电脑 / 智能手表 / 智能电视 / 智能家居等各种设备 ;
( 更详细的介绍参考 OpenHarmony 开发者文档 )
2、OpenHarmony 架构
OpenHarmony 架构分为
内核层 : Linux 内核 或 LiteOS 内核 ;
系统服务层 : 包含 基础软件服务子系统集 , 增强软件服务子系统集 , 硬件服务子系统集 , 可进行裁剪 ;
框架层 : 提供 C/C++/JS 等语言的 用户程序框架 和 Ability框架 , ArkUI框架 ;
应用层 : 系统应用 和 第三方应用 ;
上述架构 参考 文档 ;
3、OpenHarmony 特点
OpenHarmony 具有全场景覆盖 / 分布式架构 / 统一开发 / 安全可靠 等特点 ;
- 全场景覆盖 : 可用于各种 智能终端设备 , 智能手表 , 智能家居 , 智能手机 , 平板电脑 , 智能电视 ;
- 分布式架构 : 不同的设备 之间 可以 进行 通信和协同工作 ;
- 统一开发 : OpenHarmony 提供了 统一的开发工具和框架 , 可进行跨平台开发 ;
- 安全可靠 : OpenHarmony 采用了 多层安全防护机制 ;
二、HarmonyOS / OpenHarmony - Android / AOSP 对比关联
1、HarmonyOS 与 Android 的关系
HarmonyOS ( 鸿蒙操作系统 ) 不是 Android 的套壳 , 不是 Android 的套壳 , 不是 Android 的套壳 ;
OpenHarmony 源码 与 AOSP ( Android Open Source Project ) 源码 是完全不同的 , 二者都是基于 Linux 内核的操作系统 , 但是 二者的 设计理念不同 , 鸿蒙操作系统的设计理念远超 AOSP ;
HarmonyOS 完全抛弃了 Java 语言 , 在之后的 HarmonyOS 系统 不再兼容 Android 系统 , Android 系统的 APK 应用无法安装到 鸿蒙系统 中了 ;
目前 HarmonyOS 开发语言中 , 已经完全剔除 Java 语言 , 使用 TypeScript 语言进行开发 ;
2、HarmonyOS 与 OpenHarmony 的关系
OpenHarmony 的地位类似于 AOSP ( Android Open Source Project ) ;
- Google 在 AOSP 基础上 , 增加 Google 的一些定制服务 , 推出各个版本的 Android 系统 ;
- 其它厂商也可以基于 AOSP 推出自己的手机操作系统 , 如 : 三星 , 小米 等公司 ;
- 华为 在 OpenHarmony 基础上 , 增加 华为的商业服务 , 推出 HarmonyOS 商业化操作系统 ;
- HarmonyOS 操作系统 是 基于 OpenHarmony 系统 , 增加了 华为的 定制商业服务 , 如 : 鸿蒙智联 HiLink / HMS 等 ;
- 其它厂商也可以基于 OpenHarmony 推出自己的 鸿蒙操作系统 ;
- 目前除华为外没有其它厂商基于 OpenHarmony 开发操作系统 , 都是基于 AOSP 开发的 Android 操作系统 ;
对于 APP 应用开发者来讲 , HarmonyOS 与 OpenHarmony 没有太大区别 , 开发的 APP 应用都可以在两个系统上运行 , 目前只有 华为的 HarmonyOS 是基于 OpenHarmony 的操作系统 ;
在应用开发中 , 使用到的绝大多数 API 都是 OpenHarmony 的提供的 API 功能 ;
可以这样理解 : 对于 Android 开发者来说 , 开发出来的 APK 安装包 , 既可以在 Google 手机中的 AOSP 原生系统运行 , 也可以在 小米 / VIVO 等 Android 手机中运行 ;
3、HarmonyOS 与 OpenHarmony 的版本迭代
OpenHarmony 的 版本迭代 要快于 HarmonyOS ;
OpenHarmony 已经迭代到了 OpenHarmony 4.1 Release 版本 , 对应 API 能力级别为 API 11 Release ;
参考文档 :
HarmonyOS 使用的是 OpenHarmony SDK 3.2.12.2 (API Version 9 Release) , 对应 API 能力级别为 API 9 Release ;
参考文档 :
HarmonyOS 与 OpenHarmony 各个版本的对应关系 , 参考 文档 ;
该文档中也给出了对应的 DevEco Studio 的版本 , 注意这三个版本一定要匹配 ;
点击左侧 , 可以查看 HarmonyOS 1.0 / 2.x / 3.x 的 各个版本的 具体信息 ;
因此 , 使用 OpenHarmony 最新的 4.1 开发的应用 , 有可能在 华为手机 HarmonyOS 系统中 有兼容性问题 , 无法运行 ;
三、鸿蒙开发者定位及使用的开发语言和开发工具
华为应用开发者 : 基于 华为手机的 应用开发者 , 开发出的应用 在 华为的鸿蒙手机中运行 , 主要基于 HarmonyOS 进行开发 ;
- HarmonyOS 的底层开发 是 华为公司自己做的 ;
- 在该生态中 , 开发者只能开发 应用程序 ;
第三方应用 / 厂商开发者 : 如果是 第三方 智能设备厂商 接入到 鸿蒙生态 , 涉及到两个方面 :
底层开发 ( 南向开发 ) : 基于 OpenHarmony 开发自己的操作系统 , 厂商自己移植驱动和硬件 , 只需要使用 OpenHarmony 的 api 接口 ;
- 底层开发 使用的开发环境 是 HUAWEI DevEco Device Tool , 这是基于 Visual Studio Code 的开发环境 ;
- 开发语言是 C\C++ 语言 , ArkTs 语言 , 汇编语言 ;
- HUAWEI DevEco Device Tool 工具 :
应用开发 ( 北向开发 ) : 开发产品 , 接入鸿蒙生态 , 可能需要在华为手机中运行 , 需要用到 HarmonyOS 或 OpenHarmony 的 api 接口 ;
- 应用开发 使用的 开发环境 是 HUAWEI DevEco Studio , 这是 基于 IntelliJ IDEA Community 开源版本 深度定制开发 , 类似于 Android Studio ;
- 开发语言是 C\C++ 语言 , ArkTs 语言 ,
Java 语言在 API 9 版本被废弃; - HUAWEI DevEco Studio 工具 :
ArkTS 语言 是在保持 TypeScript 语言 的 基本语法风格的基础上 , 对 TypeScript 语言的动态类型特性施加了更严格的约束 , 引入了静态类型检查 , 有助于在开发阶段检测更多错误 , 提升代码的健壮性 ; 这个语言必须精通 ;
HarmonyOS 和 OpenHarmony 的 绝大部分 的 api 接口是通用的 ;