鴻蒙基于開放式測試方案發布原子化服務的實戰
目標
在鴻蒙原子化服務正式發布前,通過AGC(AppGallery Connect)平臺提供的開放式測試方案進行灰度發布服務。
前置條件
1、注冊華為開發者賬號,并實名認證,若你還沒注冊,請先注冊并實名;
2、你是華為受邀的開發者;
3、需要進行開放式測試的服務信息(APP ID及Developer ID)已提交至華為運維郵箱(agconnect@huawei.com)申請,并獲得通過。
鴻蒙開放式測試
一、什么是HarmonyOS系統的開放式測試?
官方介紹:開放式測試,可以讓您的應用在正式上架華為應用市場前,提前發布一個測試版本給您信任的測試用戶。測試版本僅對您指定的測試用戶可見,這樣您就可以提前收到用戶反饋,并在應用正式上架前改進您的應用。
簡單來說:基于AGC(AppGallery Connect)應用上架前的限定用戶內的測試版本。
說明:開放式測試當前支持Android應用和純HarmonyOS應用。
二、開放式測試的工作原理
通過開放式測試服務提前配置測試用戶,并在華為應用市場發布您的開放式測試版本。AGC會向您指定的測試用戶發送邀請郵件或短信。測試用戶點擊郵件或短信中的邀請鏈接后接受邀請,即可從華為應用市場客戶端下載您的測試應用進行相應的測試。

三、功能與特點
- 邀請指定用戶測試應用
- 指定測試時間段
- 支持免人工審核
- 快速迭代
四、實戰
4.1、構建原子化服務APP
4.1.1、創建原子化服務項目
創建原子化服務項目,比如項目名稱為:MyNfc,首先打開DevEco Studio IDE,點擊菜單 File->new->new project, 在創建項目彈窗中根據要求填寫相關信息,項目名稱:MyNfc,Project type選擇Atomic service 原子化服務,點擊“Finish”。


4.1.2、配置release認證
說明:本實戰案例只是演示原子化服務的開放式測試流程,所以MyNfc暫時沒有其他的業務內容,只有默認的MainAbility主頁面,顯示“Hello World”。
前置條件
開放式測試發布與正式發布是一樣的,所以在發布之前必須有數字證書(.cer文件)和Profile文件。
簡要說明
HarmonyOS應用/服務通過數字證書(.cer文件)和Profile文件(.p7b文件)來保證應用/服務的完整性,數字證書和Profile文件可通過申請發布證書和Profile文件獲取。
File->Project Structure->Project->Signing Configs 中配置相關證書信息和文件。


4.1.3、構建App
點擊菜單Build->Build APP(S),構建完成后可以在項目的build\outputs\app\release\下看到簽名后的release app包。


幫你踩踩坑
問題1、原子化服務app包上傳時會提示:“該軟件包屬于鴻蒙服務(免安裝)類型,暫不支持開放式測試特性”

說明:眾所周知鴻蒙原子化服務要求所有HAP包(包括Entry HAP和Feature HAP)均需滿足免安裝,所以在config.json的配置中可以看到,“installationFree”: true,但是鴻蒙提供的開放式測試目前只支持應用,也就是免安裝的原子化服務app包上傳時會提示錯誤,悲劇了,原子化服務無法使用此特性,怎么辦?
解決方案:
在測試階段可以修改免安裝為需要安裝,即在項目config.json的配置中修改"installationFree": false,這樣就可以將原子化服務的app安裝包上傳成功了。

4.2、在AGC平臺上創建項目與應用
說明:如果你還沒有在AGC平臺上創建應用,則需要先在AGC平臺上先創建項目和應用,應用創建在項目下,具體的創建方法請參看官方文檔:創建項目、創建應用
完成項目和應用的構建后可以在你的AGC平臺上,我的項目頁面 中查看到你創建的項目內容。


4.3、開放式測試
4.3.1、申請開放式測試
當前只有受邀開發者才能支持發布HarmonyOS系統的開放式測試版本,
如您需加入受邀名單,已實名開發者需發送郵件主題為“申請加入HarmonyOS應用的開放式測試”,將APP ID及Developer ID發送至agconnect@huawei.com進行申請。
如何查看APP ID及Developer ID?
官方文檔:查詢開發者帳號ID及項目ID

4.3.2、配置開放式測試
步驟1、在AGC平臺上,點擊我的應用菜單,選擇你需要進行開放式測試的應用。

步驟 2、配置與上架
首先你的開放式測試申請需要通過才能進行,配置開放式測試包括:創建測試用戶列表、上架開放式測試版本,兩個流程官方文檔都有詳細的描述和步驟,這里就不做過多的描述。下面說下遇到的問題。
幫你踩踩坑
問題1、上傳的APP包不能為原子化服務免安裝APP,否則系統會提示:“該軟件包屬于鴻蒙服務(免安裝)類型,暫不支持開放式測試特性”
解決方案:參看本文4.1.3中的問題1所提供的解決方案
問題2、應用上架無法通過,提示:“請使用發布版本的API開發應用申請上架”

問題分析:應用/服務通過IDE創建會自動配置,查看項目和module中的build.gradle文件,搜索 compileSdkVersion 字段,發現compileSdkVersion=7,目前鴻蒙版商用最高支持6,建議使用5,重現構建APP,再將新構建的APP包上傳即可。

步驟3、提交審核
基礎信息和版本信息填寫完整后,可以提交審核,當審核通過就可以愉快的進入測試階段。

4.4、測試
4.4.1、測試邀約請求
應用/服務上架(開放式測試)成功后,受邀請的測試用戶會立刻收到測試版本的邀請鏈接,點擊鏈接就可以參與測試,具體操作可以參看官方文檔:用戶參與開放式測試
值得一提的是,如果你邀請的測試用戶沒有收到邀請信息,可以通過查看測試用戶詳情中重新發起請求。

4.4.2、邀約測試用戶確認加入測試
受邀的測試用戶的郵箱或者手機短信會收到邀約信息,點擊信息中的邀約鏈接即可加入到測試。
