華為鴻蒙3.0操作系統(tǒng)(HarmonyOS 3.0)在開發(fā)方式上進行了重大的升級,增加了基于TypeScript語言的eTS開發(fā)方式,以及上千個針對JavaScript的系統(tǒng)API調(diào)用方式。
本書是基于鴻蒙3.0操作系統(tǒng)編寫的Ark UI 開發(fā)App的實戰(zhàn)教程,涉及鴻蒙操作系統(tǒng)入門、技術(shù)架構(gòu)解讀、分布式多終端App開發(fā)環(huán)境搭建、JavaScript組件開發(fā)、分布式計劃管理軟件實戰(zhàn)開發(fā)、App調(diào)試上線、多個eTS案例開發(fā)等內(nèi)容。
本書提供了全部案例的視頻教程(掃碼即可實時觀看)及配套的源代碼,可以幫助讀者全方位且快速地學(xué)習(xí)鴻蒙App開發(fā)技巧。
本書適合H5前端開發(fā)工程師、計算機等相關(guān)專業(yè)師生、華為生態(tài)的企業(yè)員工,以及對鴻蒙操作系統(tǒng)感興趣的初、中級開發(fā)者閱讀學(xué)習(xí)。
前言
基礎(chǔ)知識篇
第1章 鴻蒙概述
1.1鴻蒙的背景
1.1.1鴻蒙名字的由來及意義
1.1.2鴻蒙與Android的關(guān)系
1.1.3鴻蒙是如何開源的
1.1.4鴻蒙生態(tài)的構(gòu)成
1.2鴻蒙的分布式處理特性
1.2.1分布式技術(shù)的應(yīng)用
1.2.2一次開發(fā)多設(shè)備支持
1.2.3跨設(shè)備流轉(zhuǎn)功能
1.2.4原子化應(yīng)用
1.3鴻蒙的整體架構(gòu)設(shè)計理念
1.3.1系統(tǒng)架構(gòu)設(shè)計
1.3.2鴻蒙的人機交互設(shè)計理念
1.3.3鴻蒙App界面的設(shè)計理念
1.3.4App UI界面的設(shè)計標準
第2章 鴻蒙的技術(shù)模塊
2.1Ability框架
2.1.1Ability的定義
2.1.2FA的應(yīng)用開發(fā)
2.1.3PA的應(yīng)用開發(fā)
2.2方舟編譯器與Ark UI
2.2.1方舟(Ark)編譯器的概念與作用
2.2.2Ark UI的概念與作用
2.2.3JS UI與TS UI
2.3鴻蒙App的基本組成部分
2.3.1應(yīng)用程序包
2.3.2配置文件
2.3.3資源文件
2.3.4數(shù)據(jù)管理
2.3.5安全管理
2.4鴻蒙App開發(fā)流程初體驗
2.4.1應(yīng)用需求分析
2.4.2應(yīng)用產(chǎn)品設(shè)計
2.4.3搭建開發(fā)環(huán)境
2.4.4多端App頁面制作
2.4.5設(shè)備能力開發(fā)
2.4.6分布式本地數(shù)據(jù)開發(fā)
2.4.7引入服務(wù)端接口數(shù)據(jù)
2.4.8功能完整性測試
2.4.9上架應(yīng)用商店
第3章 鴻蒙App開發(fā)前的準備工作
3.1安裝HUAWEI DevEco Studio開發(fā)環(huán)境(Windows、macOS)
3.1.1安裝Node.js環(huán)境
3.1.2安裝DevEco Studio 3.0
3.1.3DevEco Studio的基本應(yīng)用
3.2注冊華為開發(fā)者賬號
3.2.1賬號注冊流程
3.2.2個人開發(fā)者與企業(yè)開發(fā)者的區(qū)別
3.2.3開發(fā)者管理中心
3.3創(chuàng)建Device Manager設(shè)備模擬器
3.3.1Previewer程序預(yù)覽器
3.3.2SDK的概念
3.3.3模擬器
3.4運行鴻蒙App示例程序
3.4.1模板程序的使用
3.4.2運行傳統(tǒng)的JS程序
3.4.3運行eTS版本的Hello World程序
3.4.4運行低代碼平臺程序
3.4.5運行Java版本的HelloWorld程序
第4章 App UI界面開發(fā)
4.1頁面開發(fā)基礎(chǔ)
4.1.1頁面介紹
4.1.2組件介紹
4.1.3添加交互邏輯
4.1.4頁面路由跳轉(zhuǎn)
4.1.5用戶事件
4.1.6焦點邏輯
4.2常見組件開發(fā)
4.2.1文本組件
4.2.2按鈕組件
4.2.3列表組件
4.2.4彈窗組件
4.2.5表單組件
4.2.6選擇器組件
4.2.7選項卡組件
4.2.8步驟組件
4.2.9圖片組件
4.3自定義組件開發(fā)
4.3.1創(chuàng)建Todo列表自定義組件
4.3.2導(dǎo)入Todo列表自定義組件
4.4CSS動畫效果實現(xiàn)
4.4.1屬性樣式動畫
4.4.2transform樣式動畫
4.4.3背景樣式動畫
4.5JS富邏輯動畫效果實現(xiàn)
4.5.1組件動畫
4.5.2插值動畫
項目流程篇
第5章 鴻蒙App項目概述——多終端分布式計劃管理軟件
5.1App整體項目介紹
5.1.1需求分析
5.1.2功能模塊
5.2手機端功能描述
5.2.1Todo列表
5.2.2Todo市場
5.2.3個人中心
5.3手表端功能描述
5.3.1清單列表
5.3.2Todo任務(wù)
5.3.3番茄時鐘
5.4平板端功能描述
5.4.1Todo列表
5.4.2Todo市場
5.4.3個人中心
5.5App項目搭建
5.5.1手機和平板端
5.5.2手表端
5.6分布式Todo案例頁面架構(gòu)
5.6.1App主導(dǎo)航
5.6.2滑動菜單
5.6.3清單列表
5.6.4創(chuàng)建清單
5.7Todo列表界面
5.7.1Todo列表
5.7.2添加任務(wù)
5.7.3任務(wù)提醒
5.7.4番茄任務(wù)
5.8Todo市場界面
5.8.1Todo列表
5.8.2Todo簡介
5.8.3安裝Todo
5.9個人中心界面
5.9.1個人中心
5.9.2修改資料
5.9.3修改頭像
5.9.4退出登錄
5.10Todo項目手表組件UI開發(fā)
5.10.1Todo列表
5.10.2任務(wù)列表
5.10.3任務(wù)提醒
5.10.4專注任務(wù)
第6章 數(shù)據(jù)管理功能開發(fā)
6.1數(shù)據(jù)服務(wù)功能介紹
6.1.1關(guān)系型數(shù)據(jù)庫
6.1.2對象關(guān)系映射數(shù)據(jù)庫
6.1.3輕量級數(shù)據(jù)存儲
6.1.4分布式數(shù)據(jù)服務(wù)
6.1.5分布式文件服務(wù)
6.2Todo項目數(shù)據(jù)服務(wù)開發(fā)
6.2.1數(shù)據(jù)結(jié)構(gòu)設(shè)計
6.2.2數(shù)據(jù)服務(wù)整合
6.2.3數(shù)據(jù)服務(wù)調(diào)試
第7章 設(shè)備能力開發(fā)
7.1JS調(diào)用Java PA流程
7.1.1創(chuàng)建Java電量PA
7.1.2創(chuàng)建JS操作電量UI
7.1.3調(diào)用PA數(shù)據(jù)在JS UI中顯示
7.1.4自動生成JS FA調(diào)用PA代碼
7.2數(shù)據(jù)請求能力開發(fā)
7.2.1數(shù)據(jù)請求的API介紹
7.2.2實現(xiàn)Todo項目請求接口的功能
7.3圖像上傳功能開發(fā)
7.3.1上傳功能的API介紹
7.3.2實現(xiàn)頭像上傳功能
第8章 服務(wù)卡片開發(fā)和原子化服務(wù)
8.1服務(wù)卡片概述
8.1.1什么是服務(wù)卡片
8.1.2服務(wù)卡片開發(fā)流程
8.2創(chuàng)建Todo項目服務(wù)卡片
8.2.1服務(wù)卡片的搭建
8.2.2卡片組件開發(fā)
8.2.3卡片跳轉(zhuǎn)功能開發(fā)
8.2.4卡片刷新功能開發(fā)
8.3原子化服務(wù)概述
8.3.1什么是原子化服務(wù)
8.3.2原子化服務(wù)基礎(chǔ)體驗
8.3.3原子化服務(wù)分布式體驗
8.4創(chuàng)建Todo項目原子化服務(wù)
8.4.1搭建基礎(chǔ)原子化
8.4.2流轉(zhuǎn)功能開發(fā)
8.4.3分享功能開發(fā)
第9章 流轉(zhuǎn)功能、華為分享、平行視界功能開發(fā)
9.1流轉(zhuǎn)概述與架構(gòu)
9.1.1什么是流轉(zhuǎn)
9.1.2流轉(zhuǎn)功能場景分析
9.2跨端遷移
9.2.1什么是跨端遷移
9.2.2給Todo項目添加跨端遷移功能
9.3多端協(xié)同
9.3.1什么是多端協(xié)同
9.3.2給Todo項目添加多端協(xié)同功能
9.4華為分享概述
9.4.1什么是華為分享
9.4.2給Todo項目添加分享功能
9.5平行視界概述
9.5.1什么是平行視界
9.5.2運作機制
9.5.3給Todo項目添加平行視界easygo.json配置文件
第10章 應(yīng)用調(diào)試、測試及上架發(fā)布流程
10.1硬件真機調(diào)試
10.1.1手機/平板真機調(diào)試流程之USB連接調(diào)試
10.1.2手表真機調(diào)試流程之IP Connection連接調(diào)試
10.2測試服務(wù)介紹
10.2.1單元測試框架
10.2.2分布式UI測試框架
10.3應(yīng)用發(fā)布
10.3.1申請應(yīng)用發(fā)布證書
10.3.2申請發(fā)布Profile
10.3.3打包HarmonyOS應(yīng)用
10.3.4上架HarmonyOS應(yīng)用
實戰(zhàn)應(yīng)用篇
第11章 實現(xiàn)一個購物類App(eTS)
11.1App介紹及工程搭建
11.1.1概述
11.1.2工程搭建
11.1.3eTS開發(fā)簡述
11.2UI界面開發(fā)
11.2.1實戰(zhàn)商品列表頁面
11.2.2實戰(zhàn)商品詳情頁面
11.2.3實戰(zhàn)購物車頁面
11.2.4實戰(zhàn)我的頁面
11.3eTS模型數(shù)據(jù)
11.4購物類App總結(jié)
11.4.1參考API
11.4.2eTS開發(fā)總結(jié)
第12章 實現(xiàn)一個圖庫App(eTS)
12.1圖庫App介紹
12.1.1概述
12.1.2效果展示
12.2項目搭建
12.2.1創(chuàng)建圖庫App工程
12.2.2代碼結(jié)構(gòu)解讀
12.3技術(shù)點解析
12.3.1頂部Banner
12.3.2底部頁面切換卡
12.3.3全屏預(yù)覽圖片界面
12.3.4單擊圖片跳轉(zhuǎn)到圖片預(yù)覽頁
12.4圖庫App總結(jié)
第13章 分布式手寫板App(JS)
13.1案例介紹
13.2創(chuàng)建分布式手寫板工程
13.2.1創(chuàng)建工程
13.2.2代碼結(jié)構(gòu)解讀
13.2.3請求權(quán)限
13.3手寫板功能開發(fā)
13.3.1頁面設(shè)計
13.3.2設(shè)備拉起
13.3.3分布式數(shù)據(jù)管理
13.3.4筆跡繪制
13.3.5筆跡撤回
13.3.6筆跡同步
13.4分布式手寫板App總結(jié)
第14章 分布式音視頻播放App(eTS)
14.1App介紹
14.2項目搭建
14.2.1新建工程
14.2.2代碼結(jié)構(gòu)解讀
14.3視頻播放器開發(fā)
14.3.1編寫音視頻列表界面
14.3.2實戰(zhàn)音視頻播放功能
14.3.3實戰(zhàn)音視頻控制界面
14.4音視頻App總結(jié)