搜索
高级检索
高级搜索
书       名 :
著       者 :
出  版  社 :
I  S  B  N:
文献来源:
出版时间 :
纯血鸿蒙HarmonyOS NEXT原生开发之旅
0.00     定价 ¥ 109.00
图书来源: 浙江图书馆(由浙江新华配书)
此书还可采购15本,持证读者免费借回家
  • 配送范围:
    浙江省内
  • ISBN:
    9787302685951
  • 作      者:
    作者:杨春鹏|责编:王金柱//秦山玉
  • 出 版 社 :
    清华大学出版社
  • 出版日期:
    2025.05
收藏
编辑推荐

《纯血鸿蒙HarmonyOS Next原生开发之旅》是一部系统介绍HarmonyOS NEXT(5.x)应用开发的技术指南,以“技术解析+案例驱动”为核心,为开发者打造通往鸿蒙原生开发的直通车。

1. 技术全景覆盖,构建系统知识体系

全书以“工具链→语言基础→UI开发→多端适配→应用场景”为主线,串联起HarmonyOS NEXT的核心技术脉络。从DevEco Studio开发环境搭建、ArkTS语言特性,到Stage模型、Ability组件、ArkUI声明式开发,再到进程通信、窗口管理、多媒体与网络编程,层层递进,完整呈现鸿蒙原生开发的技术全景图。尤其对“一次开发,多端部署”的分布式架构进行深度拆解,通过自适应布局、响应式设计等实战技巧,帮助开发者突破多端适配的难点。

2. 实战案例赋能,从理论到落地的闭环

书中摒弃空洞的理论说教,以“问题场景+解决方案+代码实现”的沉浸式教学贯穿始终。12章内容包含大量开发场景,如动态UI构建、服务卡片开发、语音动效实现等,更通过电子相册、多端购物应用两大完整项目,模拟商业级开发流程。每个案例均提供可运行的代码片段与关键逻辑剖析,让读者在“抄代码→改代码→写代码”的演进中,真正吃透鸿蒙开发精髓。

3. 前沿技术前瞻,抢占鸿蒙生态先机

作为聚焦HarmonyOS NEXT 5.x的开发书籍,《纯血鸿蒙HarmonyOS Next原生开发之旅》不仅详解Stage模型、ArkTS状态管理等基础能力,更深入探索服务卡片、窗口管理等进阶特性,直击鸿蒙原生开发的核心差异点。无论是进程间通信的运行机制,还是安全沙箱下的权限管控,均结合最新API与最佳实践进行讲解,助力开发者在鸿蒙生态爆发期占据技术制高点。

4.资深专业作者,使用最新版本验证

《纯血鸿蒙HarmonyOS Next原生开发之旅》在软件开发领域从业超过十年,近年来致力于鸿蒙系统开发与技术推荐,并参与多家公司和学校的鸿蒙技术讲座,《纯血鸿蒙HarmonyOS Next原生开发之旅》所有代码均在目前最新的HarmonyOS NEXT版本上测试验证,确保本书的专业性和先进性。


谁需要这本书?

转型鸿蒙的开发者:熟悉Android/iOS但亟待掌握鸿蒙特有架构的工程师。

鸿蒙进阶者:已入门但受困于多端适配、性能优化等难题的从业者。

高校师生:寻找鸿蒙教学案例与实训项目的教育机构。

这不仅是一部技术手册,更是一把打开鸿蒙生态的金钥匙。 无论你是初次入门的初学者和学生,还是有一定经验的开发者,《纯血鸿蒙HarmonyOS Next原生开发之旅》都将为你提供从“理解鸿蒙”到“驾驭鸿蒙”的完整路径。在这个万物互联的时代,掌握HarmonyOS NEXT,就是握住了下一代智能终端的入场券。现在启程,与鸿蒙共赴全场景智慧生态的星辰大海!


展开
作者简介

杨春鹏,资深软件工程师,有超过十年的行业经验,曾就职于快手,容猫,四维等大厂,涉猎大前端、Python、鸿蒙等领域技术,持有鸿蒙高级开发者证书,多次参与企业和高校鸿蒙技术培训。业余时间热爱分享,阿里云、 CSDN技术社区专家博主,发表技术文章数百篇。

展开
内容介绍

《纯血鸿蒙HarmonyOS NEXT原生开发之旅》全面系统地介绍了基于HarmonyOS NEXT系统进行原生应用开发的实用技巧。全书共12章,内容涵盖从基础工具使用到高级功能实现的各个方面。第1章详细介绍了开发环境的搭建、ArkTS语言基础及UI描述。第2章深入探讨了Ability组件和信息传递机制。第3章和第4章分别讲解了UI开发的基础知识和进阶技巧,包括ArkUI框架和自定义组件。第5章探讨了一次开发多端部署的策略。第6章介绍了多媒体应用的开发方法。第7章讨论了进程间通信和任务管理。第8章涉及窗口管理和通知功能。第9章讲解了网络编程的基本方法。第10章关注于应用安全管理。第11章详细介绍了服务卡片的开发流程。第12章通过一个购物应用案例,将前面章节的知识综合运用,展示了一个完整的项目实战过程。

《纯血鸿蒙HarmonyOS NEXT原生开发之旅》适合初学者和转型到鸿蒙系统开发的有经验的程序员阅读,也可以作为相关培训机构和高校相关专业的教学用书。


展开
目录

目    录


第 1 章  初识鸿蒙HarmonyOS NEXT 1

1.1  DevEco Studio开发工具 1

1.1.1  下载和安装DevEco Studio 1

1.1.2  DevEco Studio的基本使用 4

1.1.3  手机运行Hello World应用 6

1.1.4  了解基本工程目录 7

1.2  ArkTS语言之基本UI描述 8

1.2.1  基本概念 9

1.2.2  创建组件 9

1.2.3  属性配置 11

1.2.4  事件配置 14

1.2.5  子组件配置 15

1.3  ArkTS语言之状态管理 16

1.3.1  @State 16

1.3.2  @Prop 22

1.3.3  @Link 26

1.3.4  @Observed和@ObjectLink 28

1.3.5  @Consume和@Provide 30

1.3.6  @Watch 32

1.4  ArkTS语言之状态管理进阶 33

1.4.1  LocalStorage:页面级UI状态存储 34

1.4.2  AppStorage:应用全局的UI状态存储 36

1.4.3  PersistentStorage:持久化存储UI状态 38

1.5  ArkTS语言之动态构建UI元素 39

1.5.1  @Builder 39

1.5.2  @BuilderParam 41

1.5.3  @Styles 42

1.5.4  @Extend 44

1.6  实战:自定义导航 45

1.7  本章小结 47

第 2 章  Ability开发 48

2.1  Stage模型的概述 48

2.1.1  重要概念 48

2.1.2  应用/组件级配置 49

2.2  UIAbility组件 53

2.2.1  UlAbility组件的概述 54

2.2.2  UIAbility组件的生命周期 54

2.2.3  UIAbility组件的启动模式 57

2.2.4  UIAbility组件的基本用法 63

2.2.5  UlAbility组件与UI的数据同步 65

2.3  信息传递的载体want 67

2.3.1  want的概述 67

2.3.2  显式want与隐式want的匹配规则 68

2.4  实战:显示want启动Ability 71

2.5  实战:隐式want打开浏览器 73

2.6  本章小结 75

第 3 章  UI开发基础 76

3.1  ArkUI概述 76

3.2  ArkTS的声明式开发范式 77

3.3  常用组件 78

3.4  基础组件详解 80

3.4.1  AlphabetIndexer 82

3.4.2  Blank 84

3.4.3  Button 85

3.4.4  CalendarPicker 89

3.4.5  Checkbox 90

3.4.6  CheckboxGroup 91

3.4.7  ContainerSpan 92

3.4.8  DataPanel 92

3.4.9  DatePicker 93

3.4.10  Divider 94

3.4.11  Gauge 95

3.4.12  Image 97

3.4.13  ImageAnimator 99

3.4.14  ImageSpan 101

3.4.15  LoadingProgress 101

3.4.16  Marquee 102

3.4.17  Menu 103

3.4.18  MenuItem 103

3.4.19  MenuItemGroup 105

3.4.20  Radio 106

3.4.21  Rating 107

3.4.22  RichText 108

3.4.23  Select 109

3.4.24  Slider 110

3.4.25  Text 112

3.4.26  TextArea 114

3.4.27  TextClock 114

3.4.28  TextInput 115

3.4.29  TextPicker 116

3.4.30  TextTimer 117

3.4.31  TimePicker 118

3.4.32  Toggle 119

3.5  实战:城市列表选择案例 121

3.5.1  数据模块的定义 122

3.5.2  主页布局 123

3.5.3  实现城市列表组件 125

3.5.4  实现搜索组件 127

3.5.5  项目小结 128

3.6  本章小结 128

第 4 章  UI开发进阶 129

4.1  容器组件详解 129

4.1.1  Badge 130

4.1.2  Column和Row 132

4.1.3  ColumnSplit和RowSplit 135

4.1.4  Counter 136

4.1.5  Flex 137

4.1.6  WaterFlow和FlowItem 148

4.1.7  Stack 153

4.1.8  GridRow和GridCol 153

4.1.9  Grid和GridItem 156

4.1.10  Hyperlink 161

4.1.11  List、ListItem和

ListItemGroup 162

4.1.12  Navigator 166

4.1.13  Panel 169

4.1.14  Refresh 170

4.1.15  RelativeContainer 173

4.1.16  Scroll 175

4.1.17  SideBarContainer 178

4.1.18  Swiper 180

4.1.19  Tabs和TabContent 184

4.2  绘制组件详解 188

4.2.1  Circle 188

4.2.2  Ellipse 189

4.2.3  Line 189

4.2.4  Polyline 191

4.2.5  Polygon 192

4.2.6  Path 192

4.2.7  Rect 194

4.2.8  Shape 195

4.3  画布组件Canvas 199

4.3.1  画布组件及对象 199

4.3.2  Canvas组件示例 202

4.4  弹窗详解 207

4.4.1  警告弹窗(AlertDialog) 208

4.4.2  列表选择弹窗(ActionSheet) 209

4.4.3  自定义弹窗(CustomDialog) 211

4.4.4  日历选择器弹窗(CalendarPickerDialog) 214

4.4.5  日期滑动选择器弹窗(DatePickerDialog) 215

4.4.6  时间滑动选择器弹窗(TimePickerDialog) 217

4.4.7  文本滑动选择器弹窗(TextPickerDialog) 219

4.5  自定义组件生命周期 220

4.5.1  自定义组件生命周期概述 220

4.5.2  自定义组件生命周期示例 221

4.6  实战:待办列表案例 223

4.6.1  TODO类定义 223

4.6.2  常量数据 224

4.6.3  列表项页面 224

4.6.4  列表项增删功能页面 228

4.7  本章小结 232

第 5 章  一次开发多端部署 233

5.1  “一多”开发工程目录管理 233

5.1.1  创建工程 233

5.1.2  新建Module 233

5.1.3  修改Module配置 235

5.1.4  调整目录结构,修改依赖关系 240

5.1.5  引用ohpm包中的代码 241

5.2  自适应布局 244

5.2.1  拉伸能力 245

5.2.2  均分能力 247

5.2.3  占比能力 249

5.2.4  缩放能力 252

5.2.5  延伸能力 254

5.2.6  隐藏能力 258

5.2.7  折行能力 261

5.3  响应式布局 262

5.3.1  断点 263

5.3.2  媒体查询 265

5.3.3  栅格布局 268

5.4  实战:页签栏布局 270

5.4.1  案例准备 271

5.4.2  案例实现 271

5.5  本章小结 274

第 6 章  多媒体应用开发 275

6.1  音频开发 275

6.1.1  音频开发概述 275

6.1.2  音频播放示例 278

6.1.3  音频录制示例 282

6.2  视频开发 284

6.3  实战:语音录制和声音动效的实现 288

6.3.1  案例要求与工程结构 288

6.3.2  案例实现 288

6.4  本章小结 292

第 7 章  进程通信 293

7.1  ExtensionAbility组件 293

7.1.1  ExtensionAbility组件概述 293

7.1.2  FormExtensionAbility组件 294

7.2  进程间通信 295

7.2.1  进程模型 295

7.2.2  公共事件简介 296

7.2.3  订阅公共事件 297

7.2.4  发布公共事件 299

7.3  线程间通信 300

7.3.1  线程模型 300

7.3.2  使用Emitter进行线程间通信 300

7.4  任务管理 301

7.4.1  Background Tasks Kit简介 301

7.4.2  短时任务的开发 302

7.4.3  长时任务的开发 303

7.4.4  延迟任务的开发 305

7.5  Stage模型的应用配置文件 307

7.6  实战:在Worker子线程中解压文件 309

7.6.1  工程结构和模块类型 309

7.6.2  实现思路 310

7.6.3  效果演示 311

7.7  本章小结 311

第 8 章  窗口管理 312

8.1  窗口开发概述 312

8.2  管理应用窗口 313

8.2.1  设置应用主窗口 313

8.2.2  设置应用子窗口 314

8.2.3  窗口的沉浸式能力 316

8.2.4  设置悬浮窗口 317

8.2.5  监听窗口不可交互与可交互事件 319

8.3  通知 320

8.3.1  通知概述 320

8.3.2  通知消息样式 326

8.3.3  撤回通知消息 327

8.4  实战:窗口管理应用 328

8.4.1  窗口管理应用功能说明 328

8.4.2  窗口管理应用的实现 328

8.5  本章小结 330

第 9 章  网络编程 331

9.1  HTTP数据请求 331

9.1.1  request接口开发 332

9.1.2  requestInStream接口开发 336

9.1.3  引入第三方库ohos_axios 337

9.2  Web组件的页面加载 339

9.2.1  加载网络页面 340

9.2.2  加载本地页面 341

9.2.3  加载HTML格式的文本数据 343

9.3  实战:通过HTTP请求数据 344

9.3.1  准备一个HTTP服务接口 344

9.3.2  使用List组件进行卡片布局 344

9.3.3  通过生命周期发起HTTP请求 345

9.3.4  通过生命周期使用第三方库发起HTTP请求 345

9.3.5  Web组件加载详情页面 346

9.4  本章小结 346

第 10 章  安全管理 347

10.1  访问控制概述 347

10.1.1  应用沙箱 347

10.1.2  应用权限等级和授权方法 347

10.1.3  系统控件 349

10.2  访问控制开发流程 349

10.2.1  权限列表 349

10.2.2  申请权限 351

10.2.3  授予权限 352

10.3  实战:获取位置授权 356

10.3.1  场景描述 356

10.3.2  声明访问的权限 356

10.3.3  申请授权 356

10.3.4  获取地理位置 357

10.4  本章小结 357

第 11 章  服务卡片开发 358

11.1  服务卡片概述 358

11.1.1  服务卡片架构 358

11.1.2  服务卡片的开发模式 360

11.1.3  服务卡片的制约 360

11.2  ArkTS卡片运行机制 361

11.3  ArkTS卡片相关模块 362

11.4  ArkTS卡片的开发 364

11.4.1  创建一个ArkTS卡片 364

11.4.2  配置卡片参数 368

11.4.3  卡片生命周期管理 370

11.5  实战:电子相册案例 372

11.5.1  项目概述 372

11.5.2  项目页面代码解读 372

11.5.3  添加卡片事件 379

11.6  本章小结 381

第 12 章  项目实战:多端部署之购物应用 382

12.1  项目概述 382

12.1.1  购物应用的功能 382

12.1.2  应用效果演示 383

12.2  代码结构 383

12.3  页面结构 385

12.3.1  启动页 385

12.3.2  主页 386

12.3.3  首页标签页 387

12.3.4  新品标签页 388

12.3.5  购物车标签页 388

12.3.6  我的标签页 389

12.3.7  商品详情页 390

12.3.8  订单确认页 391

12.3.9  订单支付页 393

12.3.10  订单列表页 395

12.4  本章小结 396

附录A  ArkTS语言基础 397

A.1  编程语言 397

A.2  TypeScript语法 398

A.3  语法进阶 402

A.4  类 406

展开
加入书架成功!
收藏图书成功!
我知道了(3)
发表书评
读者登录

请选择您读者所在的图书馆

选择图书馆
浙江图书馆
点击获取验证码
登录
没有读者证?在线办证