HarmonyOS NEXT應用開發實踐(視頻教學版)

王樹生

  • 出版商: 清華大學
  • 出版日期: 2025-10-01
  • 售價: $714
  • 語言: 簡體中文
  • ISBN: 7302703078
  • ISBN-13: 9787302703075
  • 相關分類: Cross-Platform
  • 下單後立即進貨 (約4週~6週)

  • HarmonyOS NEXT應用開發實踐(視頻教學版)-preview-1
  • HarmonyOS NEXT應用開發實踐(視頻教學版)-preview-2
  • HarmonyOS NEXT應用開發實踐(視頻教學版)-preview-3
  • HarmonyOS NEXT應用開發實踐(視頻教學版)-preview-4
  • HarmonyOS NEXT應用開發實踐(視頻教學版)-preview-5
  • HarmonyOS NEXT應用開發實踐(視頻教學版)-preview-6
  • HarmonyOS NEXT應用開發實踐(視頻教學版)-preview-7
HarmonyOS NEXT應用開發實踐(視頻教學版)-preview-1

商品描述

"HarmonyOS是一款面向未來、面向全場景的分布式操作系統,借助HarmonyOS全場景分布式系統和設備生態,定義全新的硬件、交互和服務體驗。《HarmonyOS NEXT應用開發實踐:視頻教學版》基於華為的HarmonyOS Next版本,詳細介紹HarmonyOS 應用開發方法,配套示例代碼、PPT課件、教學大綱、教學視頻與讀者微信群等技術交流服務。 《HarmonyOS NEXT應用開發實踐:視頻教學版》共分14章,內容包括認識HarmonyOS介紹、應用開發準備、學習ArkTS語言、認識UIAbility組件、ArkUI概述與布局、ArkUI基礎、ArkUI進階、公共事件、網絡服務、安全管理、ArkData數據管理、設備管理器、購物應用實戰案例和聊天應用實戰案例。本書結合豐富的案例進行講解,讓讀者快速理解並掌握相關開發技能;案例的選擇側重於解決實際問題,具有很強的前瞻性、實用性和借鑒性。 《HarmonyOS NEXT應用開發實踐:視頻教學版》既適合HarmonyOS應用開發初學者和進階開發者閱讀,也適合作為高等院校或高職高專院校相關專業的師生學習移動應用開發的參考書。"

作者簡介

王樹生,浙江工商大學計算機專業碩士,開源愛好者。現為某數據公司技術負責人及架構師。擁有15年以上的Android開發經驗,對底層技術原理有很深的理解,曾修改過Android源碼實現動態屏幕和壁紙等功能,持有CDMP證書。特地撰寫此書,希望對有誌於HarmonyOS開發的初學者有所幫助。

目錄大綱

目    錄

第 1 章  HarmonyOS介紹 1

1.1  HarmonyOS的發展歷程 1

1.2  HarmonyOS的設計理念 2

1.3  HarmonyOS的整體架構 3

1.4  HarmonyOS的技術特性 6

1.5  HarmonyOS的應用場景 7

第 2 章  應用開發準備 8

2.1  開發環境搭建 8

2.1.1  下載DevEco Studio 8

2.1.2  安裝DevEco Studio 9

2.2  創建工程 11

2.3  DevEco Studio界面簡介 12

2.4  運行Hello World工程 14

2.5  應用工程結構介紹 18

2.5.1  工程級目錄 18

2.5.2  模塊級目錄 19

2.5.3  app.json5 20

2.5.4  module.json5 20

2.5.5  main_pages.json 23

2.6  應用/服務開發流程 24

第 3 章  學習ArkTS語言 25

3.1  ArkTS語言及其基本組成 25

3.1.1  ArkTS語言簡介 25

3.1.2  ArkTS的基本組成 26

3.2  聲明 27

3.2.1  變量、常量與自動類型推斷 27

3.2.2  數據類型 28

3.2.3  運算符 31

3.2.4  語句 32

第 4 章  認識UIAbility組件 37

4.1  UIAbility組件概述 37

4.2  UIAbility組件生命周期 38

4.2.1  Create狀態 38

4.2.2  WindowStageCreate和WindowStageDestroy狀態 39

4.2.3  WindowStageWillDestroy狀態 41

4.2.4  Foreground和Background狀態 41

4.2.5  Destroy狀態 42

4.2.6  自定義組件生命周期 42

4.3  UIAbility組件的用法與數據傳遞 44

4.3.1  指定UIAbility的啟動頁面 44

4.3.2  獲取UIAbility的上下文信息 44

4.3.3  使用EventHub進行數據通信 45

4.3.4  使用AppStorage/LocalStorage進行數據同步 47

4.4  應用內頁面跳轉及數據交互 48

4.4.1  啟動應用內的UIAbility 48

4.4.2  啟動應用內的UIAbility並獲取返回結果 50

4.4.3  啟動UIAbility的指定頁面 51

4.5  UIAbility組件啟動模式 54

4.5.1  Singleton啟動模式 55

4.5.2  Multiton啟動模式 56

4.5.3  Specified啟動模式 56

第 5 章  ArkUI概述與布局 59

5.1  ArkUI概述 59

5.2  ArkTS聲明式開發範式 61

5.2.1  聲明式開發範式的基本組成 61

5.2.2  聲明式開發範式的特點 62

5.2.3  聲明式開發範式的整體架構 62

5.2.4  聲明式開發範式的開發流程 63

5.2.5  聲明式開發範式的通用規則 64

5.3  布局設計 64

5.4  布局詳解 67

5.4.1  線性布局(Row/Column) 68

5.4.2  層疊布局(Stack) 77

5.4.3  彈性布局(Flex) 80

5.4.4  相對布局(RelativeContainer) 89

5.4.5  柵格布局(GridRow/GridCol) 93

5.4.6  網格布局(Grid/GridItem) 99

5.4.7  創建列表(List) 107

5.4.8  創建輪播(Swiper) 125

5.4.9  選項卡(Tabs) 130

5.5  沈浸式效果 136

5.5.1  窗口全屏布局方案 137

5.5.2  組件安全區方案 140

第 6 章  ArkUI基礎 144

6.1  基礎組件 144

6.1.1  Blank 144

6.1.2  Text/Span 146

6.1.3  TextInput/TextArea 152

6.1.4  Button 154

6.1.5  Radio 157

6.1.6  Toggle 159

6.1.7  Progress 160

6.1.8  Image 162

6.2  媒體組件 172

6.2.1  Vedio 172

6.2.2  Audio 177

6.3  繪制組件 181

6.4  畫布組件 187

6.4.1  使用畫布組件繪制自定義圖形 187

6.4.2  初始化畫布組件 191

6.4.3  畫布組件繪制方式 191

6.4.4  畫布組件常用方法 192

6.5  實戰:使用ArkUI實現登錄頁面 195

6.5.1  使用Column容器實現整體布局 195

6.5.2  使用Image組件實現標誌展示 195

6.5.3  使用TextInput組件實現賬號和密碼的輸入 195

6.5.4  實現“登錄”按鈕和“註冊”按鈕 196

6.5.5  實現其他登錄方式 196

6.5.6  完整代碼 196

第 7 章  ArkUI進階 199

7.1  氣泡和菜單 199

7.1.1  氣泡提示(Popup) 199

7.1.2  菜單(Menu) 203

7.2  使用彈出框 205

7.2.1  使用全局彈出框 206

7.2.2  不依賴UI組件的全局自定義彈出框(推薦) 208

7.2.3  自定義彈出框(CustomDialog) 212

7.3  支持交互事件 220

7.3.1  交互事件概述 220

7.3.2  通用事件介紹 221

7.3.3  觸屏事件 224

7.3.4  鼠標鍵盤事件 226

7.3.5  焦點事件 236

7.3.6  拖曳事件 251

7.3.7  手勢事件介紹 259

7.4  支持適老化 274

7.4.1  基本概念 274

7.4.2  使用約束 274

7.4.3  適配適老化的組件及觸發方式 275

7.4.4  SideBarContainer示例 275

7.4.5  TextPickerDialog示例 277

7.5  主題設置 279

7.5.1  應用深淺色適配 279

7.5.2  設置應用內主題換膚 281

第 8 章  公共事件 287

8.1  公共事件簡介 287

8.2  動態訂閱公共事件 289

8.3  取消動態訂閱公共事件 290

8.4  發布公共事件 291

第 9 章  網絡服務 293

9.1  HTTP數據請求 293

9.1.1  request接口開發步驟 293

9.1.2  requestInStream接口開發步驟 295

9.1.3  證書鎖定 297

9.2  實戰:HTTP請求獲取網絡天氣信息 298

9.2.1  獲取數據接口 299

9.2.2  配置開發環境 299

9.2.3  創建對象存儲數據 300

9.2.4  創建獲取天氣類 301

9.2.5  創建天氣顯示界面 302

9.3  WebSocket連接 308

9.4  MDNS管理 310

9.4.1  管理本地服務 310

9.4.2  發現本地服務 311

9.5  網絡連接管理 313

9.5.1  基本概念與典型場景 313

9.5.2  接收指定網絡的狀態變化通知 313

9.5.3  監控默認網絡變化並主動重建網絡連接 314

9.5.4  獲取所有註冊的網絡 317

9.5.5  根據數據網絡查詢網絡的能力信息及連接信息 317

9.5.6  使用對應網絡解析域名,獲取所有IP地址 320

9.6  流量管理 320

第 10 章  安全管理 322

10.1  程序訪問控制 322

10.1.1  訪問控制 322

10.1.2  應用權限管控 323

10.1.3  申請應用權限 325

10.1.4  向用戶申請授權 329

10.2  使用安全控件 332

10.2.1  安全控件概述 332

10.2.2  使用粘貼控件 335

10.2.3  使用保存控件 336

10.2.4  使用位置控件 338

第 11 章  ArkData數據管理 341

11.1  ArkData概述 341

11.1.1  ArkData簡介 341

11.1.2  運作機制 342

11.2  標準化數據定義 343

11.2.1  標準化數據類型 343

11.2.2  標準化數據結構 349

11.3  應用數據持久化 351

11.3.1  應用數據持久化概述 351

11.3.2  通過用戶首選項實現數據持久化 351

11.3.3  通過鍵值型數據庫實現數據持久化 354

11.3.4  通過關系型數據庫實現數據持久化 358

11.4  同應用跨設備數據同步(分布式) 365

11.4.1  同應用跨設備數據同步概述 365

11.4.2  鍵值型數據庫跨設備數據同步 365

11.4.3  關系型數據庫跨設備數據同步 371

第 12 章  設備管理器 375

12.1  傳感器 375

12.1.1  傳感器開發概述 375

12.1.2  傳感器類型 375

12.1.3  傳感器運作機制 377

12.1.4  傳感器開發步驟 378

12.2  振動 379

12.2.1  振動開發概述 379

12.2.2  振動運作機制 379

12.2.3  振動效果說明 379

12.2.4  振動開發步驟 381

12.3  狀態欄開放服務 385

12.3.1  場景介紹 385

12.3.2  開發步驟 385

第 13 章  實戰案例:購物應用 390

13.1  購物應用概述 390

13.1.1  購物流程說明 390

13.1.2  主要功能 390

13.2  項目框架設計 391

13.3  首頁內容展示 392

13.4  實現消息列表和消息詳情 396

13.4.1  消息列表展示 396

13.4.2  消息詳情展示 398

13.5  實現購物車頁面 402

13.6  實現“我的”頁面 403

13.6.1  個人信息功能實現 403

13.6.2  訂單信息 405

13.6.3  訂單詳情 406

13.6.4  設置頁面 406

13.7  實現商品詳情頁面 407

第 14 章  實戰案例:聊天應用 410

14.1  仿微信聊天應用概述 410

14.2  主頁架構設計 411

14.3  實現“微信”頁面 413

14.3.1  頂部ToolBar 413

14.3.2  聊天列表 414

14.3.3  聊天記錄 414

14.4  實現“通訊錄”頁面 419

14.4.1  基礎布局 419

14.4.2  索引模塊實現 419

14.5  實現“發現”頁面 420

14.6  實現“我”頁面 421

14.6.1  個人基本信息 421

14.6.2  二維碼頁面 422

14.6.3  其他信息 424