目錄
1. 分布式遠程模擬器
2. 本地模擬器
3. 改變了創建工程的方式
4. 原子化服務
5. 學習的好幫手:Samples
6. 應用自簽名
公元2021年6月2日,鴻蒙系統迎來了第2次開源,同時,用于開發鴻蒙App的DevEco Studio也迎來了重大的更新,這次更新是具有里程碑意義的,因為增加了很多非常牛叉的功能,而且編譯速度得到了顯著的提升,尤其是分布式模擬器,可以在無需真機的情況下開發分布式鴻蒙App,本文將深入講解DevEco Studio推出的一些核心特性,
1. 分布式遠程模擬器
分布式遠程模擬器是新版DevEco Studio中最值得使用的功能,以前的遠程模擬器只能測驗單機和網路應用,而鴻蒙的分布式特性卻只能用真機測驗,而分布式遠程模擬器允許同時創建兩個遠程模擬器(P40+P40或P40+MatePad Pro),這兩個遠程模擬器可以互相訪問,利用相關的分布式API可以獲取另一個的設備ID,所以可用來開發分布式鴻蒙App,
在默認情況下,分布式遠程模擬器是不開啟的,要想開啟該功能,進入IDE的設定視窗,點擊左側樹的DevEco Labs,在右側選中Enable Super Device復選框即可,如下圖所示,

然后點擊Tools > Device Manager選單項,就會打開HarmonyOS Virtual Device Manager視窗(需要先登錄華為開發者網站),如下圖所示,

最下面會出現一個Super device節點,里面有兩種組合方式:P40+P40和P40+MatePad Pro,選中一種組合方式即可,
搞定后,就會在IDE主視窗右側出現兩個模擬器,如下圖所示,他們的埠號分別是18888和18889,

執行hdc list targets命令,會顯示如下兩個設備:
127.0.0.1:18888 device 127.0.0.1:18889 device
如果嫌模擬器視窗太小,可以直接用scrcpy遠程投屏,命令列如下:
scrcpy -s 127.0.0.1:18888
投屏后的效果如下圖所示,這樣可以擁有一個獨立視窗的遠程模擬器,

現在可以運行一個支持分布式的App,如下面的應用可以獲取網內其他的設備,目前只獲得一個設備,就是雙模擬器中的另外一個,

2. 本地模擬器
盡管遠程模擬器使用起來非常方法,而且占用資源少,但卻有如下2個缺點:
(1)使用遠程模擬器,必須聯網,這對于沒有網路環境或網路環境不好的用戶并不友好;
(2)由于網路的差異,遠程模擬器可能會反應比較遲鈍,用戶體驗并不好;
基于以上兩個缺點,最新版DevEco Studio還推出了本地模擬器,也就是將HarmonyOS安裝在本地虛擬環境中,這樣運行效率得到了很大提升,
想使用本地模擬器,可以在DevEco Labs中打開Enable Local Emulator選項,如下圖所示,

然后在設備管理里就會看到Local Emulator標簽頁,如下圖所示,不過目前本地模擬器的鏡像還沒有放出,稍后華為會開放這些鏡像,用戶可以點擊Install按鈕進行下載,等本地模擬器發布時,我再寫文章詳細講解,

3. 改變了創建工程的方式
新版IDE改變了創建工程方式,首先要求選擇模板,如下圖所示,

在這個模板中增加了11個跨設備模板,如下所示,

下一步,會要求選擇模板適用的設備,如下圖所示,根據選擇模板的不同,下方會出現該模板適用的所有可選設備,如果不適用,就不會顯示,

4. 原子化服務
上面視窗中大多數都是一些常規的設定,這里要提一下Project Type,這里有兩個選項:Service和Application,其中Application就是普通的App,無需多介紹,而Service是原子化服務App,Service App安裝后,在桌面上是沒有圖示的,而且app的尺寸要限制在10MB以內,上傳華為應用市場,通過某些條件(如跨設備流轉),會自動從華為應用市場下載并安裝(用戶完全無感知),
而且創建原子化服務,會自動創建一個卡片,如下圖所示,

如果選中最后的Show in Service Center復選框,就會在鴻蒙的服務中心顯示,
通過從手機螢屏左下角向右上方滑動進入服務中心,
現在按下面的樣式修改string.json檔案,

接下來在模擬器或手機上運行,然后進入服務中心,輸入FirstAtomApp,就會看到這個程式,如下圖所示,其實這就是App中的卡片,

然后點擊,會彈出與其關聯的Ability,如下圖所示,不過,Service型別的App是沒有圖示的,所以只能從服務中心搜索啟動,或者滿足某些條件才能啟動,如資料流轉,NFC等,

5. 學習的好幫手:Samples
鴻蒙有一個CodeLabs(看下面的頁面),但里面的例子有點大,所以IDE提供了很多samples(相對較小),
CodeLabs地址:
https://developer.harmonyos.com/cn/develop/codelabs/
匯入samples,有兩種方式,
方式1,在歡迎界面(如下圖所示),點擊Import HarmonyOS Sample,

然后會彈出下面的視窗,選擇其中一個,點擊Next按鈕,按提示操作即可匯入特定的Sample,

方式2:在IDE里,點擊File > New > Import HarmonyOS Sample選單項,也會彈出上的Import HarmonyOS Sample視窗,

其實Samples并不是直接打開工程,而是從gitee(碼云)拉的,這些案例也可以從下面的頁面中獲取,
https://gitee.com/openharmony/app_samples/tree/master
6. 應用自簽名
我們知道,HarmonyOS App在部署到真機上時需要簽名,在以前,都需要到AppGallery Connect生成一些用于簽名的組態檔,然后進入Project Structure視窗,完成如下圖所示的配置,

在新版的IDE中,提供了一個Automatically generate signing復選框,選中該復選框,并在AppGallery Connect上創建一個與當前工程相同包名的應用,就可以自動產生相關的簽名檔案,效果如下圖所示,

不過使用自動簽名要注意如下2點:
(1)必須有鴻蒙設備連接到PC(通過USB或遠程連接都可以)
(2)與PC連接的所有設備必須都是鴻蒙設備,不能有Android設備,當然,Apple設備沒問題
如果有Android設備同時連接到PC上,在自動簽名時會拋出如下例外:

出錯的原因是系統會簽名所有的物理設備,目前并沒有判斷是鴻蒙設備,還是Android設備,所以如果遇到Android設備,也會簽名,Android設備當然無法成功對HarmonyOS App簽名了,所以就會導致簽名失敗(只要有一臺設備簽名失敗,所有的設備簽名都會失敗),
當然,新版IDE還有很多其他功能,后期我會寫文章專門介紹,敬請期待!
轉載請註明出處,本文鏈接:https://www.uj5u.com/qita/286203.html
標籤:AI
下一篇:技術經理成長復盤-領導力
