HCIA-HarmonyOS應用開發學習指南

華為技術有限公司

  • 出版商: 人民郵電
  • 出版日期: 2022-05-01
  • 定價: $1,199
  • 售價: 7.5$899
  • 語言: 簡體中文
  • 頁數: 476
  • ISBN: 7115584664
  • ISBN-13: 9787115584663
  • 相關分類: Java 程式語言
  • 立即出貨 (庫存=1)

  • HCIA-HarmonyOS應用開發學習指南-preview-1
  • HCIA-HarmonyOS應用開發學習指南-preview-2
HCIA-HarmonyOS應用開發學習指南-preview-1

買這商品的人也買了...

商品描述

本書首先對HarmonyOS和OpenHarmony進行概述,同時闡述了兩者的區別,其次講解了HarmonyOS應用開發的流程以及常備的開發基礎知識,接著介紹了基於JS UI框架以及豐富的組件快速開發應用程序UI的方法,然後針對 HarmonyOS 的接口能力進行了詳細說明,還介紹了Java PA開發,包括Service開發、JS和Java的混合開發(JS FA調用Java PA)、數據庫及Data Ability開發等,最後通過3個開發專題講解HarmonyOS應用開發的重要核心技術。除了多方面的知識講解,本書還有詳細的案例說明,通過理論與案例結合,使開發者快速掌握各項基礎開發技能。

本書作為HarmonyOS應用開發工具手冊,適合有一定基礎的JS和Java開發者或對HarmonyOS感興趣的移動應用開發、設計、測試工程師及小程序開發人員閱讀,可幫助讀者快速掌握HarmonyOS應用開發的技巧。

作者簡介

华为技术有限公司,成立于1987年,总部位于广东省深圳市龙岗区。华为是全球先进的信息与通信技术(ICT)解决方案供应商,专注于ICT领域,坚持稳健经营、持续创新、开放合作,在电信运营商、企业、终端和云计算等领域构筑了端到端的解决方案优势,为运营商客户、企业客户和消费者提供有竞争力的ICT解决方案、产品和服务,并致力于实现未来信息社会、构建更美好的全联接世界。

目錄大綱

目錄

1 應用開發介紹 1

1.1 HarmonyOS概述 1

1.1.1 系統定義 1

1.1.2 技術特性 2

1.1.3 系統安全 5

1.2 OpenHarmony概述 7

1.2.1 OpenHarmony開源項目簡介 7

1.2.2 OpenHarmony與HarmonyOS 8

1.3 應用開發簡介 9

1.3.1 南向設備開發與北向應用開發簡介 9

1.3.2 HarmonyOS與OpenHarmony應用開發的區別 9

2 應用開發入門 13

2.1 應用開發環境安裝 13

2.1.1 搭建開發環境流程 13

2.1.2 下載與安裝軟件 13

2.1.3 配置開發環境 16

2.1.4 創建Hello World工程 21

2.1.5 Hello World在預覽器中查看應用效果 23

2.1.6 模擬器運行Hello World 24

2.2 真機調試 26

2.2.1 真機設備運行流程 26

2.2.2 生成密鑰和證書請求文件 28

2.2.3 創建您的AGC項目 30

2.2.4 創建HarmonyOS應用 32

2.2.5 申請調試證書、註冊調試設備和Profile文件 33

2.2.6 配置簽名信息 38

2.2.7 通過DevEco Studio自動化簽名 39

2.2.8 構建帶簽名信息的HAP 41

2.2.9 在Phone或Tablet中運行應用 42

2.3 工程管理 45

2.3.1 APP工程結構 45

2.3.2 Java工程目錄結構 46

2.3.3 JS工程目錄結構 48

2.3.4 ets項目簡介及工程目錄結構 49

2.3.5 在工程中添加/刪除Module 51

2.4 應用調試 56

2.4.1 調試設置 56

2.4.2 啟動調試 59

2.4.3 斷點管理 60

2.4.4 變量可視化調試 61

2.4.5 HiLog日誌打印 61

3 開發基礎知識 62

3.1 應用配置文件 62

3.1.1 簡介 62

3.1.2 配置文件的元素 63

3.1.3 配置文件示例 89

3.2 應用資源文件 91

3.2.1 資源文件的分類 91

3.2.2 資源文件的使用 96

3.2.3 國際化能力的支持 101

3.3 安全與隱私 106

3.3.1 應用安全管理 106

3.3.2 應用隱私保護 107

3.3.3 三方應用調用管控機制 114

3.4 AI能力概述 115

4 基於JS擴展的類Web開發範式 116

4.1 JS UI框架概述 116

4.1.1 基礎能力 116

4.1.2 整體架構 116

4.1.3 VeiwModel與單向數據流 117

4.2 JS FA 概述 118

4.2.1 AceAbility 119

4.2.2 如何加載 JS FA 119

4.2.3 JS FA 開發目錄 120

4.3 JS FA開發語法參考 121

4.3.1 HML語法參考 121

4.3.2 CSS語法參考 135

4.3.3 JS語法參考 140

4.3.4 生命周期 146

4.4 JS UI常用組件 148

4.4.1 組件介紹 148

4.4.2 通用屬性 149

4.4.3 通用樣式與Flex佈局 150

4.4.4 通用事件 162

4.4.5 通用方法 165

4.4.6 常用容器組件 166

4.4.7 基礎組件 188

4.4.8 媒體組件 217

4.4.9 畫布組件 224

4.5 動畫 233

4.5.1 動畫樣式 233

4.5.2 基於組件的animate方法快速創建和運行動畫 239

4.5.3 基於系統api接口創建和運行動畫 244

4.6 自定義組件 248

4.6.1 基本用法 248

4.6.2 Props自定義屬性 251

4.6.3 自定義事件 256

4.6.4 生命周期定義 259

4.6.5 底部導航欄組件開發案例 260

4.7 使用JS UI框架開發智能家居app首頁 268

4.7.1 佈局分解 269

4.7.2 導入自定義的底部導航欄組件 270

4.7.3 實現標題區的內容 270

4.7.4 實現總覽區的內容 271

4.7.5 實現房間網格展示區的內容 272

5 JS接口能力開發 274

5.1 通用 274

5.1.1 通用規則 274

5.1.2 通用錯誤碼 277

5.2 基本功能 278

5.2.1 啟動一個Ability 278

5.2.2 意圖常量 284

5.2.3 應用上下文 286

5.2.4 日誌打印 287

5.2.5 頁面路由 288

5.2.6 彈窗 296

5.2.7 應用配置 299

5.2.8 定時器 300

5.2.9 窗口 302

5.2.10 剪貼板 308

5.3 文件與數據存儲 310

5.3.1 輕量級存儲 310

5.3.2 Ability上下文 314

5.3.3 文件交互 314

5.3.4 文件管理 316

5.4 網絡訪問 319

5.4.1 數據請求 319

5.4.2 上傳下載 323

5.4.3 WebSocket連接 326

5.5 系統能力 329

5.5.1 通知消息 329

5.5.2 振動 330

5.5.3 傳感器 331

5.5.4 地理位置 333

5.5.5 網絡狀態 336

5.5.6 設備信息 338

5.5.7 屏幕亮度 339

5.5.8 電池和充電屬性 342

5.5.9 電量信息 344

5.5.10 應用管理 345

5.5.11 媒體查詢 345

5.5.12 國際化 347

5.6 通信與連接 350

5.6.1 WLAN 350

6 Java PA開發 352

6.1 Service Ability開發 352

6.1.1 Service Ability 基本概念 352

6.1.2 創建 Service 352

6.1.3 啟動 Service 355

6.1.4 停止 Service 356

6.2 JS FA 調用 PA 356

6.2.1 FA 調用 PA 接口 356

6.2.2 FA 調用 PA 常見問題 357

6.2.3 JS FA 調用 PA完整示例 357

6.3 關系型數據庫 365

6.3.1 關系型數據庫概述 365

6.3.2 數據庫的創建和刪除 365

6.3.3 插入數據 367

6.3.4 更新數據 368

6.3.5 刪除數據 368

6.3.6 查詢數據 369

6.3.7 數據庫謂詞的使用 370

6.4 對象關系映射數據庫 371

6.4.1 對象關系映射數據庫概述 371

6.4.2 配置gradle 371

6.4.3 構造數據庫 372

6.4.4 構造數據表 372

6.4.5 創建數據庫 375

6.4.6 對象數據的增刪改查 375

6.4.7 設置數據變化觀察者 377

6.4.8 備份數據庫 377

6.4.9 刪除數據庫 378

6.5 Data Ability開發 378

6.5.1 Data Ability基本概念 378

6.5.2 創建Data 379

6.6 訪問Data 383

6.6.1 聲明使用權限 383

6.6.2 創建DataAbilityHelper 384

6.6.3 訪問Data Ability 384

7 JS分佈式開發專題 386

7.1 分佈式流轉概述 387

7.1.1 基本概念 387

7.1.2 流轉架構 387

7.2 權限 388

7.2.1 權限開發概述 388

7.2.2 敏感權限與非敏感權限 390

7.2.3 自定義權限開發指導 392

7.2.4 動態權限申請開發指導 395

7.3 JS分佈式開發指導 397

7.3.1 使用分佈式模擬器運行應用 397

7.3.2 分佈式拉起FA 399

7.3.3 分佈式遷移 404

7.3.4 分佈式API在FA生命周期中的位置 409

8 原子化服務與卡片開發專題 409

8.1 原子化服務概述 409

8.1.1 什麽是原子化服務 409

8.1.2 原子化服務特徵 410

8.1.3 原子化服務基礎體驗 410

8.1.4 原子化服務分佈式體驗 412

8.1.5 原子化服務典型使用場景 413

8.1.6 服務中心簡介 413

8.2 原子化服務總體開發要求與入門 416

8.2.1 總體開發要求 416

8.2.2 原子化服務開發入門案例 417

8.3 服務卡片 421

8.3.1 服務卡片概述 421

8.3.2 服務卡片開發簡介 424

8.3.3 JS卡片開發指導 427

8.3.4 智能家居卡片開發案例 441

9 基於TS擴展的聲明式開發範式 454

9.1 概述 454

9.1.1 基礎能力 454

9.1.2 整體架構 455

9.2 體驗聲明式UI 456

9.2.1 創建聲明式UI工程 456

9.2.2 聲明式UI工程目錄結構及重要文件解析 459

9.2.3 初識Component 461

9.3 聲明式語法 462

9.3.1 描述規範使用說明 462

9.3.2 基本概念 463

9.3.3 聲明式UI描述規範 464

9.3.4 組件化 467

9.3.5 UI 狀態管理 474

9.3.6 渲染控制語法 489

9.3.7 深入理解組件化@Component 496

9.3.8 語法糖 501

9.4 聲明式UI常用組件 504

9.4.1 目前支持的UI組件 504

9.5 使用聲明式UI開發智能家居頁面 505

9.5.1 佈局分解 505

9.5.2 底部導航欄實現 506

9.5.3 實現首頁中的標題區 514

9.5.4 實現首頁中的總覽區 515

9.5.5 實現預覽房間網格展示區 516

10 附錄 519

10.1 華為認證介紹 519

10.2 學習資源 519