中国华为公司发布的鸿蒙操作系统(HarmonyOS)恰逢我国近年来在高精尖及基础领域受到国外挤压的关键时期。作为软件系统的基座,操作系统的国产化对我国软件行业发展具有战略意义。
HarmonyOS的出现,是华为公司技术突围的结果,也是我国多年来信息技术发展积淀的结果,更是万物互联时代的产物。HarmonyOS是一款面向未来、面向全场景的分布式操作系统,是一个可以进行部署移动办公、运动健康、社交通信、媒体娱乐等各种场景应用的操作系统。HarmonyOS具有硬件互助、资源共享,一次开发、多端部署,统一OS、弹性部署等诸多优点,势必会成为万物互联时代的新宠。
在发布HarmonyOS的同时,华为公司也发布了基于HarmonyOS的应用开发工具包,进行应用开发的集成开发工具,以及各种各样的模拟器和工具,为开发者能够进行HarmonyOS应用开发提供了支持和保障。
本书适合具有一定的Java语言基础的读者,适合具有一定计算机或软件开发基础的大学生或软件开发者。本书通过系统地阐述和丰富的案例帮助开发者掌握HarmonyOS应用开发技术,快速进入HarmonyOS应用开发领域。
本书主要内容
第1章主要介绍什么是HarmonyOS、HarmonyOS的特点、体系架构,同时简要介绍了常见的一些操作系统,便于读者对比及认识HarmonyOS。
第2章介绍HarmonyOS应用开发基础,包括搭建开发环境、开发第一个HarmonyOS应用、HarmonyOS应用项目结构、资源和配置等。
第3章介绍常用的UI组件,包括显示型组件和交互型组件,用户和应用交互主要通过UI组件实现,本章在介绍常用组件的同时,给出了多个实例。
第4章介绍事件和通知,事件包括组件事件和公共事件,本章介绍组件事件的监听原理和开发方法。本章还介绍了公共事件的概念、公共事件的处理接口及使用方法、通知的概念及使用方法。
第5章介绍布局,包括布局创建的方式、常用的布局、自定义布局。组件解决了应用界面中放什么的问题,布局则解决了应用界面中组件如何放置的问题。
第6章介绍Page Ability,包括Page概念、Page和Slice关系、生命周期、Slice间导航、Intent、Page跨设备迁移等。Page是HarmonyOS提供的界面活动能力。
第7章介绍Service Ability,包括服务的概念、服务的定义、生命周期、命令方式访问服务、连接方式访问服务、任务分发和前台服务等。服务是HarmonyOS提供的后台运行的能力。
第8章介绍Data Ability,包括概念、Data的创建和实现、访问Data等,本章还给出了一个Data实例。Data是HarmonyOS提供的数据服务能力。
第9章介绍数据存储,包括概述、轻量级数据存储、关系型数据存储、对象关系映射存储、分布式数据服务等。数据存储为HarmonyOS应用提供数据持久化,使数据可以长期保存在设备中。
第10章介绍多媒体开发相关技术,包括图像处理、声频播放、视频播放等,通过对多媒体数据的处理,可以使所开发的应用更加丰富多彩。
第11章介绍设备管理,包括控制类小器件、位置服务、传感器、设备管理等,通过系统提供的API可以利用与设备相关的一些服务,使应用能够更好地使用设备的硬件特性。
第12章是一个天气预报的综合应用实例,通过综合运用相关技术,呈现一个完整的HarmonyOS移动应用开发的过程和方法。
本书第1、2、5~8章由刘安战撰写,第3、4章由李勇军撰写,第9章由朱彦松撰写,第10~12章由余雨萍撰写,本书各章的习题主要由张玉莹撰写,贾晓辉参与了全书的审阅修改工作,以上6位参与者均为中原工学院教师。本书最后由刘安战进行了通篇审阅、修改和定稿。
阅读建议
本书是一本HarmonyOS应用开发的入门书籍,但是由于技术的依赖性,我们认为学习本书需要具备一定的软件开发基础。
希望学习本书的读者具备一定的HTML或XML基础,具备一定的Java语言开发基础。大学计算机或软件相关专业的高年级学生一般具备学习本书的能力。如果读者具有Android或iOS应用开发的经验,则学习本书会更加轻松和快捷。
本书资源
本书配套资源可扫描下方二维码获取。
教学课件(PPT)
源代码
致谢
在本书的撰写过程中,作者得到了来自多方的支持和帮助,在这里特别表示感谢。
首先感谢家人的支持,否则作者可能无法完成本书。
感谢团队成员余雨萍、李勇军、朱彦松、张玉莹和贾晓辉老师,是大家的通力合作才使我们能够完成本书。感谢研究生周鹏、本科生张志昆、侯迎圣、赵明祺、朱美颖、赵月芽、王正昊参与了代码调试工作。感谢工作单位的其他相关老师和领导的帮助和支持。
感谢华为公司的李红前、谭景盟、胡皓、于小飞等在成书过程的支持和帮助,同时感谢华为公司一大批优秀的工程师,如果没有他们的努力恐怕不会有HarmonyOS的面世。在成书过程中我们参考了华为公司提供的在线官方技术文档。
感谢51CTO鸿蒙技术社区提供的学习和交流平台,特别是社区讲师负责人王雪燕,在成书过程中给予了很多交流机会和帮助。
感谢清华大学出版社工作人员的辛勤工作,特别是赵佳霓编辑,从选题到出版过程中付出了很多努力。
刘安战
2022年3月