目 录
第一篇 鸿蒙开发基础
第 1 章 鸿蒙开发入门 2
1.1 挑战与星辰大海 2
1.2 HarmonyOS 整体介绍 3
第 2 章 搭建开发环境DevEco Studio 6
2.1 获取开发者身份 6
2.2 安装与配置 7
2.3 DevEco Studio 界面常用布局 8
2.4 工程创建和管理 9
2.5 中文环境配置 12
2.6 代码模板管理 14
第 3 章 鸿蒙开发语法 16
3.1 ArkTS语法介绍 17
3.1.1 开启ArkTS编程之旅 17
3.1.2 ArkTS声明式UI 20
3.2 鸿蒙应用程序框架UIAbility 的
介绍与使用 34
3.2.1 UIAbility 的概念 34
3.2.2 UIAbility 的生命周期 36
3.2.3 UIAbility 基本用法 39
3.3 网络数据访问 43
3.3.1 基本概念 43
3.3.2 HTTP网络数据请求开发
入门 43
3.3.3 实战案例 56
3.4 应用数据本地保存 61
3.4.1 创建数据库 62
3.4.2 添加数据 66
3.4.3 查询数据 68
3.4.4 更新数据 71
3.4.5 删除数据 72
3.4.6 升级数据库 73
3.4.7 使用事务 75
第二篇 鸿蒙开发进阶
第 4 章 Navigation 78
4.1 基本用法 79
4.2 子页的生命周期 89
4.3 最佳实践—跨模块动态路由 96
第 5 章 Stage 模型详解 101
5.1 Stage 层级模型 101
5.2 UIAbility 103
5.3 AbilityStage 109
5.4 Want 信息传递载体 110
5.5 进程和线程模型 110
第 6 章 动画组件 113
6.1 简单动画 113
6.2 复杂动画 116
6.3 交互动画 121
6.4 高级动画效果 124
6.4.1 贝塞尔曲线实现的动画 124
6.4.2 使用弹簧曲线实现的动画 126
6.5 优化动画效果 128
第 7 章 Web 组件 131
7.1 原生开发与Web 开发 131
7.2 Web 组件概述 132
7.3 在应用中显示Web 页面 133
7.3.1 页面显示 133
7.3.2 页面跳转 140
7.4 与Web 页面交互 145
7.4.1 通过控制器加载页面资源 145
7.4.2 通过控制器加载HTML
格式的文本数据 146
7.4.3 在应用中使用Web页面的 147
JavaScript 147
7.5 其他场景 159
7.6 Web 组件应用实战案例 163
第 8 章 媒体 171
8.1 Media Kit 171
8.2 AVPlayer/SoundPool 音频播放 172
第 9 章 文件 180
9.1 将数据写入文件 180
9.2 从文件中读取数据 183
第 10 章 Native 适配开发 186
10.1 创建新项目 186
10.2 调整主页面内容 187
10.3 实现基本运算功能 188
10.4 更新CMakeLists.txt 190
10.5 使用基本运算函数 190
10.6 实现摄氏温度与华氏温度的
转换功能 191
第 11 章 使用第三方库 196
11.1 ZRouter 197
11.2 Logger 204
第 12 章 高效开发实践 207
12.1 实践工程概述 207
12.2 应用性能四板斧 209
12.3 性能优化案例展示 210
第三篇 HarmonyOS SDK开放能力集
第 13 章 应用服务 220
13.1 华为账号服务 220
13.1.1 账号服务概述 220
13.1.2 账号服务实战 223
13.2 应用内支付服务 239
13.2.1 应用内支付服务概述 240
13.2.2 IAP Kit 服务实战 240
13.3 推送服务 257
13.3.1 Push Kit 服务概述 257
13.3.2 Push Kit 服务实战 261
13.4 定位服务 271
13.4.1 Location Kit 开发指南 272
13.4.2 案例实操 276
13.5 统一扫码服务 277
13.5.1 默认界面扫码 278
13.5.2 自定义界面扫码 280
13.6 游戏登录服务 284
13.6.1 开发前置条件 285
13.6.2 游戏登录的开发步骤 288
13.7 通用文字识别 298
13.7.1 开发步骤 298
13.7.2 实现效果 301
13.8 华为支付服务 301
13.8.1 华为支付分类 302
13.8.2 华为支付服务场景 303
13.8.3 开发前置条件 305
13.8.4 华为支付服务的基本流程 313
13.9 地图服务 317
13.9.1 开发前置条件 318
13.9.2 地图开发指导 321
13.9.3 开发步骤 322
第四篇 鸿蒙特色案例实战
第 14 章 Day Matters 324
14.1 使用开源三方库
@nutpi/privacy_dialog
实现隐私协议对话框 324
14.2 网络获取数据 326
14.3 鸿蒙多设备适配 327
14.4 动画 328
14.5 服务卡片 329
第 15 章 坚果单车 332
15.1 应用开发准备 332
15.2 开发步骤 337
第 16 章 酷酷音乐 354
16.1 项目概述 354
16.2 多设备部署支持 356
16.3 ohpm 模块依赖 360
16.4 UI适配之自适应布局 364
16.5 UI适配之响应式布局 370
16.5.1 获取窗口对象 371
16.5.2 通过媒体查询 374
16.5.3 借助栅格布局 377
16.6 断点组件 381
16.7 多设备能力验证 386
16.8 后台运行 388
16.9 一镜到底 391