《HCIA-HarmonyOS套用開發學習指南》是2022年人民郵電出版社出版的圖書,作者是華為技術有限公司。
基本介紹
- 中文名:HCIA-HarmonyOS套用開發學習指南
- 作者:華為技術有限公司
- 出版時間:2022年5月1日
- 出版社:人民郵電出版社
- ISBN:9787115584663
- 裝幀:平裝
內容簡介,圖書目錄,作者簡介,
內容簡介
本書首先對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套用開發的技巧。
圖書目錄
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
作者簡介
華為技術有限公司,成立於1987年,總部位於廣東省深圳市龍崗區。華為是全球領先的信息與通信技術(ICT)解決方案供應商,專注於ICT領域,堅持穩健經營、持續創新、開放合作,在電信運營商、企業、終端和雲計算等領域構築了端到端的解決方案優勢,為運營商客戶、企業客戶和消費者提供有競爭力的ICT解決方案、產品和服務,並致力於實現未來信息社會、構建更美好的全聯接世界。