OpenHarmony从入门到放弃(一)


OpenHarmony从入门到放弃(二)

一、OpenHarmony的基本概念和特性

OpenHarmony是由开放原子开源基金会孵化及运营的开源项目,其目标是构建一个面向全场景、全连接、全智能的时代的智能终端设备操作系统。

分布式架构

OpenHarmony采用分布式架构,使得不同的设备可以相互连接、互相协作,实现设备间的资源共享和能力的互助。

确定时延引擎和高性能IPC技术

OpenHarmony采用了确定时延引擎和高性能IPC技术,以提高系统的响应速度和性能。

一次开发,多端部署

OpenHarmony支持一次开发,多端部署,使得开发者可以更高效地开发跨设备的应用。

硬件互助,资源共享

OpenHarmony可以使不同设备之间的硬件能力得到互助和共享,提高了设备的利用效率。

弹性部署

OpenHarmony支持多种终端设备的弹性部署,可以适应不同的硬件资源和功能需求。

二、OpenHarmony的架构

内核层

这是最底层的一层,主要提供硬件相关的功能。包括内核子系统(如Linux内核或LiteOS)和内核抽象层(KAL,Kernel Abstract Layer);

内核抽象层通过屏蔽多内核差异,为上层提供基础的内核能力,包括进程/线程管理、内存管理、文件系统、网络管理和外设管理等。

系统服务层

这是OpenHarmony的核心能力集合,通过框架层对应用程序提供服务;

基础软件服务子系统集提供公共的、通用的软件服务,如事件通知、电话、多媒体等;

系统基本能力子系统集为分布式应用在多设备上的运行、调度、迁移等操作提供了基础能力,如分布式软总线、分布式数据管理、分布式任务调度等。

框架层

这是应用程序开发的基础,提供了一套完整的开发工具链,包括应用框架、UI框架、设备管理框架等。

应用层

这是最顶层,面向最终用户,提供各种应用程序。

三、OpenHarmony的跨平台开发能力

OpenHarmony的跨平台开发能力主要体现在其分布式特性上;

通过分布式软总线技术,OpenHarmony可以将不同设备进行连接,实现设备间的资源共享和能力的互助;

开发者可以利用OpenHarmony提供的分布式数据管理、分布式任务调度等能力,实现应用的一次开发、多端部署,提高了开发效率;

此外,OpenHarmony还支持多种终端设备的按需弹性部署,能够适配不同类别的硬件资源和功能需求,为跨平台开发提供了更多的灵活性和可能性;

OpenHarmony提供了丰富的组件和工具,支持开发者快速构建跨平台应用;

例如,OpenHarmony提供了用户程序框架、Ability框架以及UI框架,使开发者可以轻松地实现不同终端的业务逻辑和界面逻辑的复用;

此外,OpenHarmony还支持多种开发语言和工具,如Java、C/C++、JavaScript等,以及多种开发环境,如Android Studio、Visual Studio等,为开发者提供了更多的选择和便利。

四、OpenHarmony的UI/UX设计

OpenHarmony的UI/UX设计旨在提供一致、流畅且直观的用户体验。

设计原则

OpenHarmony遵循现代UI/UX设计原则,如用户友好性、一致性、响应性和美观性;

这些原则确保用户能够轻松地理解和操作设备或应用。

组件库

OpenHarmony提供了一套丰富的UI组件库,包括按钮、文本框、列表、网格、滑块等;

这些组件经过精心设计,以确保它们在不同设备和屏幕尺寸上都能提供良好的用户体验。

布局和样式

OpenHarmony支持灵活的布局和样式选项,使开发者能够轻松地创建各种界面和布局;

这包括支持响应式布局,以适应不同屏幕尺寸和方向。

动画和过渡效果

为了增强用户体验,OpenHarmony提供了各种动画和过渡效果;

这些效果可以使界面更加生动、流畅,并提供视觉反馈,以帮助用户理解正在发生的操作。

可访问性

OpenHarmony重视可访问性,确保所有用户(包括残障人士)都能轻松地使用设备和应用;

这包括支持屏幕阅读器、高对比度主题和可定制的控件等。

国际化

为了支持全球用户,OpenHarmony提供了国际化功能,使开发者能够轻松地将其应用翻译成多种语言,并适应不同地区的文化习惯。

开发工具

OpenHarmony提供了各种开发工具和资源,以帮助开发者创建高质量的UI/UX设计;

这包括设计指南、模板、图标库和模拟器等。

五、分布式应用部署和管理

分布式应用部署和管理是OpenHarmony系统中的重要组成部分,其目标是实现多台设备间的数据同步更新。

设备认证

在多台设备之间进行数据交换之前,需要对设备进行认证,确保设备的安全性和可信性。

分布式拉起

当一台设备需要与另一台设备进行数据交换时,需要通过分布式拉起的方式启动分布式应用;

分布式拉起是指通过特定的协议和机制,使多个设备协同工作,完成特定的任务或操作。

分布式数据管理

在多台设备之间进行数据交换时,需要进行数据的管理和同步;

分布式数据管理是指通过特定的机制和技术,实现多台设备之间的数据同步和更新。

相关推荐
花先锋队长13 分钟前
鸿蒙6.1加持菜鸟App:地理围栏+实况窗,靠近驿站自动提醒,取件不再遗漏
华为·智能手机·harmonyos
nashane20 分钟前
HarmonyOS 6学习:页面跳转弹窗状态保持全解析
学习·华为·harmonyos·harmonyos 5
maaath26 分钟前
【maaath】Flutter for OpenHarmony 实战:电影榜单应用开发指南
flutter·华为·harmonyos
SameX1 小时前
独立开发一个把走过的路变成 km² 的 App,聊聊 25m 网格和后台 GPS 的坑
ios
XD7429716362 小时前
科技早报晚报|2026年4月30日:Agent 安全壳、浏览器 iOS 测试台与可穿戴数据 API,今天更值得看的 3 个技术机会
科技·ios·开源项目·科技新闻·开发者工具
若兰幽竹2 小时前
【HarmonyOS 6.1 全场景实战】开篇词:打造消除“吃饭焦虑”的《灵犀厨房》
harmonyos·鸿蒙开发·华为鸿蒙系统
机构师2 小时前
<鸿蒙><APP><3D>鸿蒙3D开发,如何获取ktx格式的天空盒图?
华为·harmonyos
李艺为3 小时前
Fake Device Test作假屏幕分辨率分析
android·java
zh_xuan3 小时前
github远程library仓库升级
android·github
峥嵘life3 小时前
Android蓝牙停用绝对音量原理
android