前言
鸿蒙操作系统(HarmonyOS)是华为推出的一款面向未来的万物互联式全场景分布式操作系统。作为新一代的智能终端操作系统,HarmonyOS为不同设备的智能化、互联与协同提供了统一的分布式系统; HarmonyOS提供一站式的分布式应用开发平台,支持分布式多端开发、分布式多端调测、多端模拟仿真。HarmonyOS在给大家带来简洁、流畅、连续、安全可靠的全场景交互体验的同时,也给大家提供了全方位的质量与安全保障。为了让更多的人了解并使用HarmonyOS,笔者将自身学习经历以案例的形式进行了梳理、总结,形成了本书,供更多的爱好者参考、学习。
本书特色
本书从基础知识着手,通过实战案例全面系统地讲解HarmonyOS开发,由浅入深,循序渐进,集前瞻性、应用性、趣味性于一体。本书以实战为主,以案例驱动学习,以基础知识和案例相结合的方式,系统地讲解HarmonyOS应用程序开发的常用技术。
第1章HarmonyOS开发基础,主要讲解环境搭建、工程创建与运行、工程运行流程解析等内容,为后续开发做准备。
第2章UI框架,通过15个案例讲解Text、Button、DirectionalLayout、DependentLayout、TextField、Picker、Image/Slider、ListContainer、ScrollView、ProgressBar、RadioButton/RadioContainer、Checkbox、TabList/Tab、WebView、PageSlider/PageSliderIndicator等常见的UI组件与布局,用户可通过组件进行交互操作,并获得响应。
第3章Ability框架,共6个案例,Page Ability 是FA唯一支持的模板,用于提供与用户的交互能力; Service Ability基于 Service 模板的 Ability,用于后台运行任务但不提供用户交互界面; 公共事件与通知可用于系统消息通知发布与取消; 线程管理通过任务分发器TaskDispatcher()接口实现城市天气预报实时显示; 线程间通信通过EventHandler机制,创建EventHandler子类在不同线程间分发和处理InnerEvent事件或Runnable任务。
第4章媒体,共2个案例,HarmonyOS的音视频模块提供Player()接口,用于创建Player实例,实现声频、视频播放与暂停。
第5章安全,有1个案例,通过BiometricAuthentication()接口提供生物特征识别认证能力,实现手机人脸识别功能。
第6章AI,共4个案例,分别讲解调用IBarcodeDetector()接口实现二维码生成; 调用ITextDetector()接口实现AI通用文字识别; 调用TtsClient实现语音播报; 调用AsrClient实现语音控制台灯亮灭。
第7章设备管理,共5个案例,分别讲解调用方向类传感器接口对象CategoryOrientationAgent感知用户设备当前的朝向,从而达到为用户指明方位的目的; 控制类小器件振动器调用VibratorAgent类的主要接口实现指定的振动功能; 设置项Setting显示、订阅WLAN状态、蓝牙状态、飞行模式状态等设置项信息; 调用Locator()接口获取经纬度、位置、道路等定位信息; 调用BatteryInfo()接口获取及订阅电池电量。
第8章数据库,共2个案例,分别讲解用轻量级数据库获取Preferences实例实现自动登录功能; 调用对象关系映射数据库,继承OrmObject、Serializable()接口实现日记的增、删、改、查功能。
第9章分布式,共4个案例,分别讲解通过分布式任务调度机制实现分布式计票器功能; 通过分布式迁移与回迁调度机制实现分布式编辑器功能; 通过分布式数据库服务实现分布式数据库功能; 通过分布式文件服务实现分布式文件浏览器功能。
第10章综合案例(案例40: 分布式云笔记),综合实现笔记在云服务器上的增、删、改、查及多设备间迁移功能,通过此案例提升读者HarmonyOS综合开发能力。
读者对象
(1) 零基础的编程自学者。
(2) 广大中、小学生。
(3) 培训机构学生。
(4) 希望快速、全面掌握HarmonyOS 程序开发的人员。
(5) 参加毕业设计的学生。
配套资源
扫描下方二维码可下载本书源代码,视频讲解可扫描书中对应章节二维码观看。
本书源代码
致谢
《HarmonyOS从入门到精通40例》虽然倾注了笔者的全部努力,但由于笔者水平有限,书中难免有疏漏之处,敬请广大读者谅解。感谢你购买本书,祝你读书快乐!
感谢出版社的所有编辑在本书编写和审核过程中提供的无私帮助和宝贵建议,正是由于你们的耐心和支持才让本书得以出版。
戈帅
2022年8月
