新書推薦:

《
海外中国研究·元代江南政治社会史研究
》
售價:HK$
118.8

《
加密货币突破数字边界
》
售價:HK$
75.9

《
养元筑基调气血
》
售價:HK$
76.8

《
永夜微光:拉康与未竟之精神分析革命
》
售價:HK$
129.8

《
古希腊社会生活史
》
售價:HK$
54.8

《
维特根斯坦传
》
售價:HK$
63.8

《
暮日耀光:张居正与明代中后期政局
》
售價:HK$
206.8

《
厚土中华
》
售價:HK$
107.8
|
| 編輯推薦: |
|
移动互联网的蓬勃发展,离不开技术的持续革新。鸿蒙(HarmonyOS6)系统的横空出世,以设备互联为核心特色,不仅承载着国内自主IT产业链的厚望,更引领了一场全新的技术革命。如今,越来越多的开发者投身于鸿蒙生态的建设中,共同探索这一前沿领域的无限可能。如果你对鸿蒙App开发充满兴趣,却苦于无从下手,那么《Harmonyos6应用开发:从零基础到App上架》这本书将是你的不二之选。本书以实战为导向,摒弃了繁琐的理论堆砌,直接带你进入鸿蒙开发的实战世界。与其他系统不同,基于HarmonyOS6的鸿蒙App采用了ArkTS语言和ArkUI框架,极大地简化了开发流程。对于前端和小程序开发者来说,几乎无需额外学习成本,就能轻松上手。同时,鸿蒙系统集成了丰富的SDK,让开发者能够更专注于功能实现,避免了版本适配等后顾之忧。本书内容新颖实用,从基础的环境搭建到进阶的技术实践,一步步引导你掌握鸿蒙App的开发精髓。书中不仅详细讲解了各类常用组件、数据存储方式等基础知识,还深入剖析了后台任务、手势交互、网络通信、人工智能等高级特性。全书每一重要功能均提供了相应的项目,全书共精心设计近20个各类常见App
|
| 內容簡介: |
|
《鸿蒙HarmonyOS6应用开发:从零基础到App上线》是一部鸿蒙(HarmonyOS)开发实战教程,内容由浅入深、由基础到高级,带领读者一步一步走进鸿蒙App开发的神奇世界。《鸿蒙HarmonyOS6应用开发:从零基础到App上线》共分为16章。其中,前8章是基础部分,主要讲解DevEcoStudio的环境搭建、ArkTS语言编程基础、鸿蒙App开发的各种常用组件、页面转场和消息交互以及几种数据存储方式等内容;后8章为进阶部分,主要讲解鸿蒙App开发中的后台任务、手势交互、动画特效、网络通信、多媒体、感知定位、人工智能和多端部署等内容。书中在讲解知识点的同时,提供了大量实战范例,方便读者将所学知识迅速运用到实际开发中。通过本书的学习,读者能够掌握3类主流App的基本开发技术,包括购物App(电子商务)、聊天App(即时通信)和娱乐App(短视频分享)。此外,通过本书读者还将学会开发一些趣味应用,如计算器、找回密码、购物车、电商首页、仿录音笔、电子相册、打牌游戏、指南针、水平仪、卫星浑天仪、导航定位、附近交友、文本朗读器、仿微信的私聊和群聊、仿抖音的短视频分享、人脸识别等。《鸿蒙HarmonyOS6应用开发:从零基础到App上线》以HarmonyOS6版本为基础,适用于鸿蒙开发的广大从业者、有志于转型鸿蒙App开发的程序员、鸿蒙App开发的业余爱好者,也可作为大中专院校与培训机构的鸿蒙课程教学用书。
|
| 關於作者: |
|
欧阳燊,硕士,资深软件开发专家,有近20年软件开发经验,熟悉C/C、Java、ArcTS及相关软件架构,从事Android/HarmonyOS开发10年以上,有丰富的Android开发实战经验。出版畅销书《AndroidStudio开发实战:从零基础到App上线》《Kotlin从零到精通Android开发》等。
|
| 目錄:
|
目 录
第 1 章 鸿蒙开发环境搭建1
1.1 鸿蒙系统开发简介1
1.1.1 鸿蒙系统的发展历程1
1.1.2 鸿蒙系统的三大特性2
1.1.3 鸿蒙系统的总体架构3
1.1.4 鸿蒙应用的技术理念5
1.2 搭建DevEco Studio开发环境7
1.2.1 计算机配置要求7
1.2.2 安装DevEco Studio7
1.2.3 DevEco Studio的常用设置9
1.3 创建并编译鸿蒙App项目11
1.3.1 创建鸿蒙App新项目11
1.3.2 导入已有的项目13
1.3.3 编译App项目13
1.4 运行和调试鸿蒙App14
1.4.1 及时修复错误代码14
1.4.2 在预览器上运行App15
1.4.3 查看App的运行日志16
1.5 小结17
1.6 动手练习17
第 2 章 鸿蒙App开发基础18
2.1 鸿蒙App的开发特点18
2.1.1 App的运行环境18
2.1.2 App的开发语言19
2.1.3 App连接的数据库20
2.2 鸿蒙App的项目结构21
2.2.1 App项目目录结构21
2.2.2 编译配置文件build-profile.json523
2.2.3 运行配置文件module.json524
2.3 鸿蒙App的调试打包25
2.3.1 连接真机测试26
2.3.2 给App添加开发签名27
2.3.3 App的编译态和发布态29
2.4 小结32
2.5 动手练习32
第 3 章 ArkTS语言编程基础33
3.1 变量与对象33
3.1.1 基本数据类型33
3.1.2 数组类型35
3.1.3 类及对象36
3.2 控制结构37
3.2.1 分支语句37
3.2.2 循环语句38
3.2.3 匿名函数39
3.3 ETS页面开发41
3.3.1 调用其他位置的代码41
3.3.2 创建新的App页面42
3.3.3 跳转到另一个页面44
3.4 小结45
3.5 动手练习45
第 4 章 简单组件46
4.1 文本显示46
4.1.1 设置文本的内容46
4.1.2 设置文本的大小47
4.1.3 设置文本的颜色50
4.2 组件基础51
4.2.1 设置组件的宽高51
4.2.2 设置宽高的权重52
4.2.3 设置组件的间距53
4.2.4 设置组件的对齐方式54
4.3 常用容器57
4.3.1 行/列容器57
4.3.2 堆叠容器57
4.3.3 相对容器58
4.3.4 滚动容器60
4.4 按钮触控62
4.4.1 按钮组件62
4.4.2 单击事件63
4.4.3 数据绑定66
4.5 实战项目:计算器69
4.5.1 需求描述69
4.5.2 界面设计69
4.5.3 关键代码69
4.6 小结71
4.7 动手练习71
第 5 章 页面转场72
5.1 开关页面72
5.1.1 页面的跳转和返回72
5.1.2 页面的生命周期73
5.1.3 页面的跳转模式76
5.2 传递消息78
5.2.1 发送请求参数78
5.2.2 返回应答参数79
5.2.3 事件总线中转消息81
5.2.4 发射器中转消息83
5.3 外部跳转84
5.3.1 UIAbility84
5.3.2 显式意图86
5.3.3 隐式意图87
5.3.4 拨号页面和通讯录页面89
5.4 小结91
5.5 动手练习91
第 6 章 中级组件92
6.1 图像显示92
6.1.1 图像组件92
6.1.2 九宫格特效95
6.1.3 占位组件96
6.1.4 几何图形组件97
6.2 选择按钮99
6.2.1 复选框99
6.2.2 开关组件101
6.2.3 单选框103
6.3 文本输入104
6.3.1 单行文本输入框104
6.3.2 多行文本输入框107
6.3.3 数据双向绑定108
6.4 挑选组件110
6.4.1 日期选择器110
6.4.2 时间选择器113
6.4.3 文本选择器115
6.4.4 自定义对话框117
6.5 实战项目:找回密码119
6.5.1 需求描述119
6.5.2 界面设计120
6.5.3 关键代码121
6.6 小结123
6.7 动手练习123
第 7 章 数据存储124
7.1 首选项124
7.1.1 读写首选项124
7.1.2 实现记住密码功能127
7.1.3 读写全局变量128
7.2 数据库129
7.2.1 SQL的基本语法130
7.2.2 创建数据库132
7.2.3 读写数据库133
7.2.4 优化记住密码功能138
7.3 文件操作139
7.3.1 应用沙箱139
7.3.2 读写文件142
7.3.3 图片选择器145
7.4 状态存储147
7.4.1 页面级状态存储147
7.4.2 应用级状态存储149
7.4.3 持久化状态存储152
7.5 实战项目:购物车153
7.5.1 需求描述154
7.5.2 功能分析155
7.5.3 关键代码156
7.6 小结159
7.7 动手练习159
第 8 章 高级组件160
8.1 列表类容器160
8.1.1 下拉列表160
8.1.2 平铺列表162
8.1.3 复杂列表164
8.2 网格类容器166
8.2.1 规则网格166
8.2.2 不规则网格168
8.2.3 瀑布流网格169
8.3 滑块类容器172
8.3.1 滑块容器172
8.3.2 数字指示器174
8.3.3 圆点指示器176
8.4 页签类容器178
8.4.1 页签容器178
8.4.2 自定义页签180
8.4.3 底部页签栏182
8.5 实战项目:电商首页184
8.5.1 需求描述184
8.5.2 界面设计184
8.5.3 关键代码185
8.6 小结186
8.7 动手练习186
第 9 章 后台任务187
9.1 权限管控187
9.1.1 应用权限187
9.1.2 振动器188
9.1.3 日程管理191
9.2 消息通知195
9.2.1 简单消息195
9.2.2 消息跳转199
9.2.3 消息渠道201
9.3 后台处理204
9.3.1 简单延迟处理205
9.3.2 后台代理提醒206
9.3.3 后台任务管理208
9.4 实战项目:仿录音笔212
9.4.1 需求描述212
9.4.2 功能分析212
9.4.3 关键代码212
9.5 小结215
9.6 动手练习215
第 10 章 手势交互216
10.1 路由导航216
10.1.1 接管返回键216
10.1.2 顶部标题栏217
10.1.3 底部工具栏220
10.2 事件监控223
10.2.1 触摸事件223
10.2.2 画布绘图225
10.2.3 手写签名227
10.3 手势处理228
10.3.1 手势种类229
10.3.2 下拉刷新236
10.3.3 上拉加载237
10.4 实战项目:电子相册239
10.4.1 需求描述239
10.4.2 功能分析240
10.4.3 关键代码240
10.5 小结242
10.6 动手练习242
第 11 章 动画特效243
11.1 帧动画243
11.1.1 图像帧动画243
11.1.2 动图动画245
11.1.3 淡入淡出动画246
11.2 渐进动画247
11.2.1 属性动画248
11.2.2 显式动画251
11.2.3 关键帧动画253
11.3 转场动画255
11.3.1 页面转场动画255
11.3.2 组件转场动画258
11.3.3 共享元素转场260
11.4 实战项目:打牌游戏262
11.4.1 需求描述262
11.4.2 功能分析263
11.4.3 关键代码264
11.5 小结266
11.6 动手练习266
第 12 章 网络通信267
12.1 HTTP调用267
12.1.1 JSON串转换267
12.1.2 GET方式调用269
12.1.3 POST方式调用273
12.2 下载和上传275
12.2.1 加载网络图片275
12.2.2 下载文件277
12.2.3 上传文件280
12.3 即时通信284
12.3.1 通过SocketIO传输文本284
12.3.2 通过SocketIO传输图片287
12.3.3 利用WebSocket传输消息290
12.4 网页浏览294
12.4.1 访问本地网页294
12.4.2 访问外部网页296
12.4.3 网页脚本交互299
12.5 实战项目:仿微信的私聊和群聊302
12.5.1 需求描述302
12.5.2 功能分析303
12.5.3 效果展示308
12.6 小结311
12.7 动手练习311
第 13 章 多媒体312
13.1 相片处理312
13.1.1 查看相机信息312
13.1.2 使用相机拍照315
13.1.3 获取图片信息317
13.2 视频处理319
13.2.1 视频播放319
13.2.2 使用相机录像322
13.2.3 获取视频信息324
13.3 音频处理326
13.3.1 选择音频326
13.3.2 播放音频329
13.3.3 录制音频332
13.4 实战项目:仿抖音的短视频分享336
13.4.1 需求描述336
13.4.2 功能分析337
13.4.3 效果展示341
13.5 小结343
13.6 动手练习343
第 14 章 感知定位344
14.1 传感器344
14.1.1 传感器的种类344
14.1.2 摇一摇——加速度传感器347
14.1.3 指南针——磁场传感器348
14.1.4 其他常见的传感器350
14.2 定位服务355
14.2.1 开启定位功能355
14.2.2 获取位置信息357
14.2.3 全球卫星导航系统360
14.3 地图导航363
14.3.1 集成华为地图364
14.3.2 显示地图面板368
14.3.3 搜索地点信息372
14.3.4 规划导航路线376
14.4 实战项目:仿微信的附近的人380
14.4.1 需求描述381
14.4.2 功能分析382
14.4.3 效果展示385
14.5 小结387
14.6 动手练习387
第 15 章 人工智能388
15.1 智能语音388
15.1.1 文本转语音388
15.1.2 语音识别391
15.1.3 文本朗读394
15.1.4 智能字幕397
15.2 智能视觉399
15.2.1 扫描二维码399
15.2.2 文字识别402
15.2.3 图像分类404
15.3 人脸识别407
15.3.1 人脸检测407
15.3.2 人脸比对410
15.3.3 活体检测413
15.4 小结416
15.5 动手练习416
第 16 章 多端部署417
16.1 界面级一多417
16.1.1 布局能力417
16.1.2 资源使用419
16.1.3 交互归一424
16.2 功能级“一多”425
16.2.1 系统能力425
16.2.2 动态逻辑判断426
16.2.3 配置能力集426
16.3 项目级“一多”427
16.3.1 应用程序包结构427
16.3.2 部署模型分类428
16.3.3 代码项目结构428
16.4 应用上架与元服务429
16.4.1 打包上架429
16.4.2 元服务概述432
16.4.3 开发元服务435
16.5 小结437
16.6 动手练习437
附录A 鸿蒙开发专业术语索引438
附录B 本书的服务端程序说明442
参考文献444
|
| 內容試閱:
|
前 言
移动互联网十几年来的科技创新层出不穷,以设备互联为特色的鸿蒙(HarmonyOS)系统可谓一大创举,承载着国内自主IT产业链的厚望。鸿蒙系统自诞生之日起便自带明星光环,吸引了越来越多的开发者投身鸿蒙生态建设。
有别于Android系统采用Java+XML的传统App开发方式,基于HarmonyOS 6的鸿蒙App采用ArkTS语言编写App代码,采用ArkUI作为声明式UI的开发框架,极大地简化了App界面布局和业务逻辑的编码过程。由于ArkTS语言基于TypeScript,而TypeScript是微信小程序的开发语言,且TypeScript又基于JavaScript,而JavaScript正是HTML网页的开发语言,因此对于前端开发和小程序开发来说,几乎不需要额外学习ArkTS。相比采用Kotlin+Compose的最新Android开发,既要学习Kotlin语言,又要学习Compose工具,鸿蒙系统的App开发可谓非常亲民。
除此之外,鸿蒙系统集成了多种常用的SDK,包括网络通信的http模块、媒体服务的media模块、地图服务的map模块、扫码服务的scan模块,甚至人工智能用到的语音服务、视觉服务、推理服务等。开发者无须引入各种第三方SDK,既减少了学习成本,又避免了版本适配问题,让开发者能更专注于功能实现。
虽然鸿蒙是一个全新的操作系统,但其App开发与Android系统具有共同之处:最终都要面向用户。对于用户而言,HarmonyOS系统上的微信与Android系统上的微信,都是社交App,两者在功能和使用上并没有显著区别。因此,在将Android应用改造为HarmonyOS应用的过程中,往往要求每项功能都有对应的平替实现,这也是鸿蒙生态建设的一大难点。
鉴于此,本书以笔者之前出版的《Android Studio开发实战:从零基础到App上线(第3版)》为蓝本,将Android系统的App开发教程改造为鸿蒙系统的App开发教程,以便初学者能够按图索骥迅速上手。欣喜的是,Android开发技术绝大部分都能在鸿蒙系统找到对应的平替技术,而且实现代码更为简单,对于有Android开发基础的读者,能够通过本书很快上手HarmonyOS开发。当然,如果你没有Android开发基础,也没关系,通过本书也能够从零开始你的鸿蒙开发之旅。
本书采用由浅入深、循序渐进的章节体例,其中前8章为基础部分,主要讲解DevEco Studio的环境搭建、ArkTS语言编程基础、鸿蒙App开发的各种常用组件、页面转场和消息交互、鸿蒙App的几种数据存储方式等;后8章为进阶部分,讲解鸿蒙App开发的后台任务、手势交互、动画特效、网络通信、多媒体、感知定位、人工智能、多端部署等内容。各章节与前著基本对应,同时穿插了鸿蒙的特色技术,如事件总线、双向绑定、状态存储、日程管理、转场动画、气压计、图像分类、深色模式、元服务等。
书中在讲解知识点的同时,提供了大量实战范例,方便读者迅速将所学的知识应用到实际开发中。通过本书的学习,读者将掌握3类主流App的基本开发技术,包括购物App(电子商务)、聊天App(即时通信)、娱乐App(短视频分享)。此外,通过本书读者还将学会开发一些趣味应用,如计算器、找回密码、购物车、电商首页、仿录音笔、电子相册、打牌游戏、指南针、水平仪、卫星浑天仪、导航定位、附近交友、文本朗读器、仿微信的私聊和群聊、仿抖音的短视频分享、人脸识别等。《Android Studio开发实战:从零基础到App上线(第3版)》一书中的所有实战项目,本书基本提供了HarmonyOS的对应实现。
此外,鸿蒙系统针对Android系统的部分App功能,采用了不同的技术路线加以实现,包括对齐方式、行/列容器、UIAbility、九宫格图片、文本选择器、图片选择器、滑块容器、页签容器、短时任务、长时任务、双击手势、拖动手势、关键帧动画、SocketIO以及元数据提取器等,本书也都一一详细说明,帮助读者深入理解技术原理。特别是鸿蒙App的开发环境DevEco Studio所涉及的常见操作,如预览器调试、连接真机、添加签名、导入第三方库、生成证书、关联AGC、应用上架等,本书也在相关章节中予以介绍。
综上所述,这本精心编写的鸿蒙版App开发图书,不仅能教会读者如何快速开发一个好玩、好看、好用的App,更能让读者领略行业前沿的国产替代方向。深度解密流行App背后的手机开发技术,展示移动信息科技的最新工程实践,是本书希望呈献给读者的知识盛宴。
本书采用HarmonyOS 6.0版本开发,随书源码包括客户端部分和服务端部分。其中客户端的App代码基于DevEco Studio 6.0.0 Release开发,并使用API 20的SDK(HarmonyOS 6.0.0)编译与调试通过,测试机型包括Mate 60 Pro和nova 12 Pro;配套的服务端源码采用Java Web框架,结合MySQL数据库,基于IDEA开发。
读者可以扫描下述二维码获取本书的源码和PPT课件:
如果下载有问题,请发送电子邮件到booksaga@126.com,邮件主题为“鸿蒙HarmonyOS 6应用开发:从零基础到App上线”。
本书部分项目案例参考了鸿蒙官方的开发者社区,正文的部分内容参考了鸿蒙官网的开发者文档,在此向官方社区和官网文档的贡献者和维护者表示衷心的感谢。
最后,感谢王金柱编辑的热情指点,感谢出版社其他人员的辛勤工作,感谢我的家人一直以来的支持,感谢各位师长的谆谆教导,没有他们的鼎力相助,本书就无法顺利完成。
欧阳燊
2025年11月
|
|