鴻蒙征途:app開發實戰

鴻蒙征途:app開發實戰

《鴻蒙征途:app開發實戰》是2021年人民郵電出版社出版的圖書,本書是一本基於Java的鴻蒙作業系統(HarmonyOS)App開發指南。

基本介紹

  • 中文名:鴻蒙征途:app開發實戰
  • 作者:李寧
  • 出版社:人民郵電出版社
  • ISBN:9787115563866
內容簡介,圖書目錄,作者簡介,

內容簡介

全書系統、由淺入深地介紹了HarmonyOS App開發的知識、相關經驗和技巧。本書以理論與實戰相結合的方式向讀者呈現HarmonyOS App開發的整個過程。全書分為兩個部分,部分詳細講解HarmonyOS App開發所需的知識,並提供大量的真實案例代碼供讀者練習;第二部分給出兩個實戰項目,分別為套用類App項目(線上電子詞典)和遊戲類App項目(俄羅斯方塊),通過這兩個項目,讀者可以很好地回顧和總結前面10章講解的知識點,並付諸實踐。
本書內容通俗易懂,循序漸進,既是HarmonyOS初學者的入門圖書,也是HarmonyOS開發人員的進階讀物。

圖書目錄

第 1章 開啟鴻蒙(HarmonyOS)之旅 6
1.1 了解鴻蒙(HarmonyOS) 6
1.1.1 HarmonyOS的由來 6
1.1.2 HarmonyOS的技術定位和目標 7
1.1.3 HarmonyOS的系統架構 8
1.2 手把手帶你搭建HarmonyOS開發環境 9
1.3 創建第 一個HarmonyOS App 10
1.3.1 創建HelloWorld項目 10
1.3.2 啟動模擬器 13
1.3.3運行HelloWorld 14
1.4 分析第 一個HarmonyOS程式 15
1.4.1 HarmonyOS工程的目錄結構 15
1.4.2 HarmonyOS工程的主配置檔案:config.json 16
1.5 開發跨設備的HarmonyOS App 17
1.6 調試代碼 19
1.6.1 設定斷點 19
1.6.2 輸出日誌 20
1.7 在真機上運行HarmonyOS App 22
1.7.1 生成簽名檔案 22
1.7.2 簽名HarmonyOS App 26
1.7.3 網路部署App 28
1.8 解決gradle下載太慢的問題 28
1.9 總結與回顧 29
第02章 HarmonyOS中的視窗 31
2.1 Page Ability概述 31
2.2 Page Ability的基本用法 32
2.2.1 手動創建Page Ability類 32
2.2.2 在config.json檔案中註冊Page Ability 32
2.2.3 創建布局檔案 33
2.2.4 裝載布局檔案 33
2.2.5 顯示Page Ability 34
2.2.6 銷毀Page Ability 35
2.3 Page Ability之間的互動 35
2.3.1 顯式使用Intent 35
2.3.2 隱式使用Intent 36
2.3.3 Page Ability之間的互動 38
2.4 Page Ability的啟動類型(LaunchType) 41
2.5 Page Ability的跨設備遷移 44
2.5.1 跨設備遷移前的準備工作 45
2.5.2 獲取設備列表 46
2.5.3 根據設備ID調用Page Ability 50
2.6 AbilitySlice 53
2.6 生命周期 57
2.7 總結與回顧 59
第03章 布局 60
3.1 方向布局(DirectionalLayout) 60
3.2 依賴布局(DependentLayout) 62
3.3 棧布局(StackLayout) 64
3.4 表格布局(TableLayout) 65
3.5 位置布局(PositionLayout) 66
3.6 動態裝載布局 68
3.7 總結與回顧 71
第04章 UI組件 72
4.1 展示組件 72
4.1.1 文本組件(Text) 72
4.1.2 圖像組件(Image) 74
4.1.3 進度條組件(ProgressBar) 75
4.1.4 圓形進度條(RoundProgressBar) 77
4.1.5 時鐘組件(Clock) 78
4.2 互動組件 79
4.2.1 按鈕組件(Button) 80
4.2.2 切換按鈕組件(ToggleButton) 82
4.2.3 文本編輯組件(TextField) 84
4.2.4 單選和多選組件(RadioButton和Checkbox) 86
4.2.5 開關組件(Switch) 89
4.4 高級組件 91
4.4.1 列表組件(ListContainer) 91
4.4.2 標籤列表組件(TabList) 96
4.4.3 滑動選擇器組件(Picker) 99
4.4.5 日期選擇器組件(DatePicker) 102
4.4.6 時間選擇器組件(TimePicker) 105
4.4.7 滾動視圖組件(ScrollView) 108
4.5 總結與回顧 112
第05章 對話框 113
5.1 普通對話框 113
5.1.1 顯示一個簡單的對話框 113
5.1.2 為對話框添加“關閉”按鈕 113
5.1.3 為對話框添加多個按鈕 114
5.1.4 調整按鈕的尺寸 115
5.1.5 自動關閉對話框 116
5.2 定製對話框 117
5.3 Toast信息框 118
5.4 總結與回顧 119
第06章 數據管理 120
6.1 讀寫配置檔案 120
6.1.1 Preferences的基本用法 120
6.1.2 監控配置檔案的寫入動作 122
6.1.3 移動和刪除配置檔案 123
6.2 操作SQLite資料庫 124
6.2.1 使用SQL操作SQLite資料庫 124
6.2.2 使用謂詞操作SQLite資料庫 126
6.2.3 使用事務 128
6.3 對象關係映射 129
6.4 分散式檔案 132
6.5 分散式數據 135
6.5.1 同步數據 135
6.5.2 用謂詞查詢分散式數據 137
6.7 總結與回顧 144
第07章 Data Ability 145
7.1 Data Ability概述 145
7.2 Data Ability中的URI 145
7.3 創建Data Ability 146
7.4 訪問本地資料庫 147
7.5 訪問本地檔案 153
7.6 跨設備訪問資料庫 157
7.7 跨設備訪問檔案 159
7.8 總結與回顧 160
第08章 Service Ability 161
8.1 Service Ability的生命周期 161
8.2 後台運行Service Ability 162
8.1.2 操作本地的Service Ability 162
8.1.2 跨設備操作Service Ability 165
8.2 跨設備調用Service Ability中的API 165
8.3 總結與回顧 172
第09章 多媒體 173
9.1 音頻 173
9.1.1 準備本地音頻檔案 173
9.1.2 播放本地音頻檔案 175
9.1.3 暫停和繼續播放音頻 176
9.1.4 停止播放音頻 176
9.1.5 播放線上音頻檔案 176
9.1.6 播放音頻的完整案例 176
9.2 視頻 180
9.3 相機 185
9.3.1 拍照API的使用方式 185
9.3.2 使用相機需要申請的許可權 188
9.3.3 拍照的完整案例 188
9.4 總結與回顧 194
第 10章 其他高級技術 195
10.1 人工智慧(AI) 195
10.1.1 初始化AI引擎 195
10.1.2 分詞 195
10.1.3 詞性標註 197
10.1.4 意圖分析 198
10.1.5 關鍵字提取 199
10.1.6 實體識別 200
10.2 感測器 201
10.2.1 獲取當前設備支持的感測器 201
10.2.2 訂閱方向感測器 202
10.4 定位 203
10.5 藍牙 206
10.5.1 打開和關閉藍牙 206
10.5.2 發現和連線藍牙設備 208
10.6 撥打電話 212
10.7 總結與回顧 212
第 11章 套用項目:跨設備線上電子詞典 214
11.1 功能需求分析 214
11.2 搭建項目框架 217
11.2.1 創建項目工程 217
11.2.2讓項目可以在多種設備上運行 218
11.2.3 配置App圖示和名稱 219
11.2.4 添加許可權 220
11.3 利用網路爬蟲生成本地詞庫 220
11.3.1 分析Web版詞庫的HTML代碼 220
11.3.2 利用網路爬蟲生成本地詞庫 223
11.3.3 管理本地詞庫 225
11.4 查詢本地詞庫 227
11.4.1 主界面布局 227
11.4.2 如何讓本地詞庫與App一同發布 228
11.4.3 打開rawfile目錄中的SQLite資料庫檔案 229
11.4.4 查詢本地詞庫 230
11.4.5 在主界面中顯示查詢結果 231
11.5 實現跨設備運行 232
11.5.1 不同的設備使用不同的布局檔案 232
11.5.2 代碼選擇布局檔案 234
11.5.3 跨設備查詢本地詞庫 235
11.5.4 在智慧型手錶上顯示查詢結果 236
11.6 查詢網路詞庫 237
11.6.1 分析網路詞典的HTML代碼 237
11.6.2 異步查詢網路詞庫 239
11.6.3 同時從本地詞典和網路詞典查詞 242
11.7 總結與回顧 244
第 12章 遊戲項目:5分鐘搞定俄羅斯方塊 245
12.1 功能需求分析 245
12.2 類的繼承關係 247
12.3 使用Tetris組件 247
12.3.1 先把Tetris組件搭建起來再說 247
12.3.2 遊戲主界面的布局 248
12.3.3 使用Tetris組件 250
12.4 實現Tetris組件 251
12.4.1 定義Tetris組件的事件類 251
12.4.2 定義遊戲事件屬性 251
12.4.3 初始化Tetris組件 252
12.4.4 繪製遊戲框線 254
12.4.5 繪製小方格 256
12.4.6 繪製遊戲背景方塊 257
12.4.7 隨機產生block 258
12.4.8 消除行 259
12.4.9 block歸位 261
12.4.10 校驗當前位置是否可以繪製block 261
12.4.11 繪製block 263
12.4.12 順時針旋轉block 264
12.4.13 開始和停止遊戲 265
12.4.14 快速下落與正常下落之間的切換 266
12.4.15 左右水平移動block 267
12.4.16 為Tetris組件增加屬性 267
12.5 讓遊戲更完美 268
12.5.1 開始玩遊戲 268
12.5.2 顯示下一個block 269
12.5.3 控制block左右移動 270
12.5.4 控制block快速下落 270
12.5.5 處理積分 271
12.5.6 遊戲結束 271
12.6 總結與回顧 272

作者簡介

李寧,計算機專業碩士,首批HarmonyOS系統課程開發者,某大型軟體公司前高級技術專家,IT暢銷書作者,企業IT內訓講師,騰訊課堂特約講師,CSDN學院高級講師。曾出版多本IT暢銷書,寫過數百篇技術文章。主要著作包括《Kotlin程式開發入門精要》《Swift 權威指南》《Android開發權威指南》《Android深度探索》等。

熱門詞條

聯絡我們