书籍作者:柳伟卫 | ISBN:9787301328538 |
书籍语言:简体中文 | 连载状态:全集 |
电子书格式:pdf,txt,epub,mobi,azw3 | 下载次数:2004 |
创建日期:2023-03-28 | 发布日期:2023-03-28 |
运行环境:PC/Windows/Linux/Mac/IOS/iPhone/iPad/Kindle/Android/安卓/平板 |
华为自主研发的HarmonyOS(鸿蒙系统)是一款“面向未来”、面向全场景(移动办公、运动健康、社交通信、媒体娱乐等)的分布式操作系统。借助 HarmonyOS 全场景分布式系统和设备生态,定义全新的硬件、交互和服务体验。本书采用全新的HarmonyOS 2.0版本作为基础,详细介绍了如何基于HarmonyOS来进行应用开发。
全书分为3部分:
?入门(1-4章):介绍HarmonyOS的背景、开发环境搭建,并创建一个简单的HarmonyOS应用。
?进阶(5-27章):介绍HarmonyOS的核心功能的开发,内容包括Ability、UI开发、线程管理、视频、图像、相机、音频、媒体会话管理、媒体数据管理、安全管理、二维码、NFC、蓝牙、WLAN、网络管理、电话服务、设备管理、数据管理等。
?实战(28-32章):演示HarmonyOS在各类场景下的综合实战案例。
本书辅以大量的实战案例,图文并茂,读者易于理解掌握。同时,案例的选型偏重于解决实际问题,具有很强的前瞻性、应用性。本书适合加入HarmonyOS生态 的开发者阅读。
柳伟卫,网名老卫、waylau,在 IT 公司担任项目经理、架构师、高级技术顾问等职位,是 CSDN、 开源中国、云栖社区等技术社区专家,慕课网特邀讲师。具有多年软件开发管理及系统架构经验。负责过多个省、国家大型分布式系统的设计与研发,参与了多个大型项目的微服务架构的技术改造,在实际工作中,积累了大量系统架构、大数据处理以及性能调优经验。已经出版了《分布式系统常用技术及案例分析》《Spring Boot 企业级应用开发实战》《Spring Cloud 微服务架构开发实战》《Spring 5 开发大全》《Cloud Native 分布式架构原理与实践》《大型互联网应用轻量级架构实战》等专著。
本书辅以大量的实战案例,图文并茂,读者易于理解掌握。同时,案例的选型偏重于解决实际问题,具有很强的前瞻性、应用性。本书适合加入HarmonyOS生态 的开发者阅读。
第1章 鸿蒙缘起——HarmonyOS简介 1
1.1 HarmonyOS产生的背景 2
1.2 特性简介 4
1.3 架构简介 8
1.4 获取开发支持 10
第2章 先利其器——开发环境搭建 11
2.1 注册华为开发者联盟账号 12
2.2 下载安装DevEco Studio 16
2.3 设置DevEco Studio 18
2.4 DevEco Studio功能简介 23
2.5 DevEco Studio常见问题小结 27
第3章 牛刀小试——开发第一个HarmonyOS应用 30
3.1 创建一个新工程 31
3.2 运行工程 32
3.3 在真机中运行应用 35
3.4 使用DevEco Studio预览器 37
第4章 应用初探——探索HarmonyOS应用 38
4.1 App 39
4.2 Ability 41
4.3 库文件 42
4.4 资源文件 42
4.5 配置文件 45
4.6 pack.info 53
第5章 Ability基础知识 54
5.1 Ability概述 55
5.2 Ability的三层架构 56
5.3 Page Ability 59
5.4 实战:多个AbilitySlice间的路由和导航 62
5.5 Page与AbilitySlice生命周期 67
5.6 实战:Page与AbilitySlice生命周期示例 70
5.7 Service Ability 77
5.8 实战:Service Ability生命周期示例 81
5.9 Data Ability 89
5.10 实战:DataAbilityHelper访问文件 90
5.11 实战:DataAbilityHelper访问数据库 98
5.12 Intent 106
第6章 Ability任务调度 114
6.1 分布式任务调度概述 115
6.2 分布式任务调度能力简介 116
6.3 分布式任务调度实现原理 118
6.4 实现分布式任务调度 120
6.5 实战:分布式任务调度启动远程FA 121
6.6 实战:分布式任务调度启动和关闭远程PA 129
第7章 Ability公共事件与通知 139
7.1 公共事件与通知概述 140
7.2 公共事件服务 141
7.3 实战:公共事件服务发布事件 146
7.4 实战:公共事件服务订阅事件 149
7.5 高级通知服务 152
7.6 实战:通知发布与取消 156
第8章 剪贴板 159
8.1 剪贴板概述 160
8.2 场景简介 160
8.3 接口说明 160
8.4 实战:写入剪贴板数据 162
8.5 实战:读取剪贴板数据 165
第9章 用Java开发UI 169
9.1 用Java开发UI概述 170
9.2 组件与布局 171
9.3 实战:XML创建布局 172
9.4 实战:Java创建布局 176
9.5 实战:常用显示类组件——Text 179
9.6 实战:常用显示类组件——Image 189
9.7 实战:常用显示类组件——ProgressBar 192
9.8 实战:常用交互类组件——Button 194
9.9 实战:常用交互类组件——TextField 204
9.10 实战:常用交互类组件——Checkbox 208
9.11 实战:常用交互类组件——RadioButton/RadioContainer 210
9.12 实战:常用交互类组件——Switch 214
9.13 实战:常用交互类组件——ScrollView 216
9.14 实战:常用交互类组件——Tab/TabList 217
9.15 实战:常用交互类组件——Picker 221
9.16 实战:常用交互类组件——ListContainer 225
9.17 实战:常用交互类组件——RoundProgressBar 228
9.18 实战:常用交互类组件——DirectionalLayout 230
9.19 实战:常用交互类组件——DependentLayout 234
9.20 实战:常用交互类组件——StackLayout 237
9.21 实战:常用交互类组件——TableLayout 238
第10章 用JS开发UI 240
10.1 用JS开发UI概述 241
10.2 实战:创建JS FA应用 242
10.3 组件与布局 246
10.4 实战:点赞按钮 247
10.5 实战:JS FA调用PA 249
第11章 多模输入UI开发 255
11.1 多模输入概述 256
11.2 接口说明 256
11.3 实战:多模输入事件 259
第12章 线程管理 262
12.1 线程管理概述 263
12.2 场景介绍 263
12.3 接口说明 265
12.4 实战:线程管理示例 266
12.5 线程间通信概述 270
12.6 实战:线程间通信示例 272
第13章 视频 276
13.1 视频概述 277
13.2 实战:媒体编解码能力查询 277
13.3 实战:视频编解码 280
13.4 实战:视频播放 285
13.5 实战:视频录制 291
第14章 图像 296
14.1 图像概述 297
14.2 实战:图像解码和编码 297
14.3 实战:位图操作 303
14.4 实战:图像属性解码 309
第15章 相机 313
15.1 相机概述 314
15.2 实战:创建相机设备 315
15.3 实战:配置相机设备 322
15.4 实战:捕获相机帧 326
第16章 音频 332
16.1 音频概述 333
16.2 实战:音频播放 333
16.3 实战:音频采集 339
16.4 实战:短音播放 344
第17章 媒体会话管理 350
17.1 媒体会话管理概述 351
17.2 接口说明 352
17.3 实战:AVSession媒体框架客户端 355
17.4 实战:AVSession媒体框架服务端 360
第18章 媒体数据管理 364
18.1 媒体数据管理概述 365
18.2 实战:获取媒体元数据 365
18.3 实战:媒体存储数据操作 370
18.4 实战:获取视频与图像缩略图 377
第19章 安全管理 383
19.1 权限基本概念 384
19.2 权限运作机制 384
19.3 权限约束与限制 385
19.4 应用权限列表 385
19.5 应用权限开发流程 387
19.6 生物特征识别认证概述 393
19.7 生物特征识别运作机制 393
19.8 生物特征识别约束与限制 393
19.9 生物特征识别开发流程 394
第20章 二维码 397
20.1 二维码概述 398
20.2 场景介绍 399
20.3 接口说明 399
20.4 实战:生成二维码 399
第21章 通用文字识别 404
21.1 通用文字识别概述 405
21.2 场景介绍 406
21.3 接口说明 406
21.4 实战:通用文字识别示例 407
第22章 蓝牙 413
22.1 蓝牙概述 414
22.2 实战:传统蓝牙本机管理 415
22.3 实战:传统蓝牙远端设备操作 422
22.4 实战:BLE扫描和广播 429
第23章 WLAN 436
23.1 WLAN概述 437
23.2 实战:WLAN基础功能 438
23.3 实战:配置不信任热点 445
23.4 实战:WLAN消息通知 449
第24章 网络管理 455
24.1 网络管理概述 456
24.2 实战:使用当前网络打开一个URL链接 456
24.3 实战:使用当前网络进行Socket数据传输 462
24.4 实战:流量统计 467
第25章 电话服务 473
25.1 电话服务概述 474
25.2 实战:获取当前蜂窝网络信号信息 474
25.3 实战:观察蜂窝网络状态变化 479
第26章 设备管理 486
26.1 设备管理概述 487
26.2 实战:传感器示例 490
26.3 实战:Light示例 495
26.4 实战:获取设备的位置 499
26.5 实战:(逆)地理编码转化 505
第27章 数据管理 510
27.1 数据管理概述 511
27.2 关系型数据库 511
27.3 对象关系映射数据库 516
27.4 实战:使用对象关系映射数据库 520
27.5 轻量级偏好数据库 531
27.6 实战:使用轻量级偏好数据库 534
27.7 数据存储管理 540
27.8 实战:使用数据存储管理 541
第28章 综合案例1:车机应用 545
28.1 案例概述 546
28.2 代码实现 546
28.3 应用运行 553
第29章 综合案例2:智能穿戴应用 555
29.1 案例概述 556
29.2 代码实现 557
29.3 应用运行 563
第30章 综合案例3:智慧屏应用 564
30.1 案例概述 565
30.2 代码实现 565
30.3 应用运行 575
第31章 综合案例4:手机应用 577
31.1 案例概述 578
31.2 代码实现 578
31.3 应用运行 598
参考文献 599