一、什么是HarmonyOS
萬物互聯時代應用開發的機遇、挑戰和趨勢
隨著萬物互聯時代的開啟,應用的設備底座將從幾十億手機擴展到數百億IoT設備。全新的全場景設備體驗,正深入改變消費者的使用習慣。 同時應用開發者也面臨設備底座從手機單設備到全場景多設備的轉變,全場景多設備的全新底座,為消費者帶來萬物互聯時代更為高效、便捷的體驗。
新的場景同時也帶來了新的挑戰。開發者不僅需要支持更加多樣化的設備,還需要支持跨設備的協作。不同設備類型意味著不同的傳感器能力、硬件能力、屏幕尺寸、操作系統和開發語言,還意味著差異化的交互方式。同時跨設備協作也讓開發者面臨分布式開發帶來的各種復雜性,例如跨設備的網絡通信、數據同步等。若采取傳統開發模式,適配和管理工作量將非常巨大。
當前移動應用開發中遇到的主要挑戰包括:
- 針對不同設備上的不同操作系統,重復開發,維護多套版本。
- 多種語言棧,對人員技能要求高。
- 多種開發框架,不同的編程范式。
- 命令式編程,需關注細節,變更頻繁,維護成本高。
圖1?更多的智能設備
與此同時,AI時代全面來臨。隨著人們對交互和信息獲取的智能化要求越來越高,移動設備的計算能力越來越強,在設備側就能提供AI的相關能力,例如自然語言交互、環境智能感知、圖像識別等。如何快速地使用這些AI能力,使自己的應用更加智能化,進而更好的服務消費者,也是開發者面臨的全新挑戰。
移動終端上的應用生態發展到今天也面臨著變革。傳統厚重的App ,整體體驗好,功能齊全,但開發成本高、周期長,且存在搜索,安裝,升級,卸載等一系列需要用戶主動關注的顯性操作,這些顯性操作給用戶帶來了實質性的使用成本。輕量化、可快速達成消費者意圖、可獨立執行、完成單一功能的程序實體正成為新的趨勢。
為了更好的抓住機遇,應對萬物互聯所帶來的一系列挑戰,新的應用生態應該具備如下特征:
- 單一設備延伸到多設備:應用一次開發就能在多個設備上運行,軟件實體能夠從單一設備轉移到其他設備上,且多個設備間能夠協同運行,給消費者提供全新的分布式體驗。
- 厚重應用模式到輕量化服務模式:提供輕量化的服務,最小化資源消耗,一步直達,快速完成消費者特定場景的任務。
- 集中化分發到AI加持下的智慧分發:為消費者提供智慧場景服務,實現“服務找人”。
- 純軟件到軟硬芯協同的AI能力:提供軟硬芯協同優化的AI能力,全面滿足應用高性能訴求。
圖2?HarmonyOS
HarmonyOS是新一代的智能終端操作系統,為不同設備的智能化、互聯與協同提供了統一的語言,為用戶帶來簡捷,流暢,連續,安全可靠的全場景交互體驗。
HarmonyOS結合移動生態發展的趨勢,提出了三大技術理念:一次開發,多端部署;可分可合,自由流轉;統一生態,原生智能。核心技術理念詳細內容可參考《鴻蒙生態應用開發白皮書》,此白皮書全面闡釋了HarmonyOS生態下應用開發核心理念、關鍵能力以及創新體驗,旨在幫助開發者快速、準確、全面的了解HarmonyOS開發套件給開發者提供的能力全景和未來的愿景。
另外,《鴻蒙生態應用安全技術白皮書》全面闡述了HarmonyOS生態下應用安全核心理念;通過應用開發、應用發布、應用安裝運行三個階段,構建關鍵安全能力,從始至終貫徹應用安全核心理念,幫助開發者快速理解HarmonyOS生態應用安全設計,提升應用開發安全質量。
二、HarmonyOS核心技術理念
HarmonyOS應用:使用HarmonyOS SDK開發的應用程序,能夠在HarmonyOS終端設備(如:手機、平板等)上運行,其有兩種形態:
- APP:傳統方式的需要安裝的APP
- 元服務:輕量級,具備免安裝,隨處可及,服務直達,自由流轉等關鍵特征的元服務
HarmonyoS應用關鍵概念:元服務和App的關系
- App和元服務是HarmonyOS生態的“一體兩面”,是面向用戶的兩種形態。
- App和元服務均可選擇服務卡片作為入口,應用圖標作為必選入口。
- App具有手動下載安裝、包大小無限制、應用內或應用市場更新、全量功能等特征,可使用全量API
- 元服務具有免安裝、包大小有限制、即用即走、輕量化等特征,只能使用“元服務API集”
三大技術理念:
一次開發 多端部署、可分可合 自由流轉、統一生態 原生智能
1.一次開發 多端部署
一個工程一次開發上架,多端按需部署,目的是為了支撐開發者高效的開發多種終端設備上的應用,為了實現這一目的HarmonyOS提供了幾個核心能力,包括多端開發環境、多端開發能力以及多端分發機制
2.可分可合 自由流轉
可分可合:開發態代碼共享,應用和元服務生命周期完全獨立
元服務是支撐可分可合、自由流轉的輕量級化程序實體,幫助開發者的服務更快觸達用戶,可分可合是指在開發態,開發者通過業務解耦,把不同的業務拆分成多個模塊,在部署態,開發者可以將一個或多個模塊自由組合,打包成多個App Pack,不同的App Pack的包名是不一樣的,每個App Pack都需要單獨上架,在運行態,應用和元服務的生命周期完全獨立
HarmonyoS操作系統提供了自由流轉的能力,使得開發者可以方便地開發出跨越多個設備
的應用,用戶也能夠方便地使用這些功能。
自由流轉可分為跨端遷移和多端協調兩種情況,分別是時間上的串行交互和時間上的并行交互
3.統一生態 原生智能
Harmonyos支持業界主流跨平臺開發框架,通過多層次的開放能力提供統一接入標準,實
現三方框架快速接入。
HarmonyOS內置強大的Al能力,面向Harmonyos生態應用的開發,通過不同層次的Al能力
開放,滿足開發者的不同開發場景下的訴求,降低應用的開發門檻,幫助開發者快速實現應
用智能化。
MachineLearning Kit提供了場景化能力,包括通用卡證識別、實時語音識別等;提供AI控件能力,使系統控件融合文字識別等AI能力,CoreAlAP提供了圖像語義、語言語音解析、OCR文字識別等能力,Core DeepLearning APl提供了高性能低功耗的端側推理和端側學習環境,意圖框架提供了Harmonyos系統級的意圖標準體系,通過多維系統感知、 大模型等能力,構建全局意圖范式實現對用戶顯性與潛在意圖的理解并及時、 準確地將用戶需求傳遞給生態伙伴匹配合適宜的服務,為用戶提供多模態、 場景化進階體驗
三、高效開發與測試
1.開發語言
ArkTS是鴻蒙應用的開發語言。它在保持TypeScript(簡稱TS)基本語法風格的基礎上,通過規范強化靜態檢查和分析,提升代碼健壯性,讓你輕松上手。
2.ArkUI框架
聲明式UI前端,提供了UI開發范式的基礎語言規范,并提供內置的UI組件、布局和動畫,提供了多種狀態管理機制,為應用開發者提供一系列接口支持;
語言運行時,選用方舟語言運行時,提供了針對UI范式語法的解析能力,跨語言調用支持的能力和TS語言高性能運行環境;
聲明式UI后端引擎,提供了兼容不同開發范式的UI渲染管線,提供多種基礎組件、布局計算、動效、交互事件和繪制能力;
渲染引擎提供了高效的繪制能力,將渲染管線收集的渲染指令繪制到屏幕的能力;
平臺適配層,提供了對系統平臺的抽象接口,具備接入不同系統的能力,如系統渲染管線、生命周期調度等
3.集成開發環境
HUAWEI DevEco Studio是面向HarmonyOS生態的集成開發環境,提供了一站式的HarmonyOS生態應用、元服務開發能力,主要包括工程管理、代碼編輯、界面預覽、編譯構建、代碼調試、性能調優、設備模擬、命令行工具和端云一體化開發等功能
4.開發和測試工具
測試套件包括測試標準和測試工具兩部分
測試標準覆蓋HarmonyOS生態應用性能、功耗、穩定性、兼容性、UX、安全、分布式、游戲等測試規范,幫助開發者解決測什么的問題,測試工具平臺提供了HarmonyOS生態應用開發、調試、單元測試、集成測試、上架測試等各開發階段所需的測試工具集,支持多種設備,幫助開發者全面高效測試
四、上架與分發
HUAWEl AppGallery Connect
HUAWEl AppGallery Connect為開發者提供全球化、全場景、一站式應用/元服務分發能力,并為開發者提供質量、安全、工程管理等領域的能力,大幅降低應用開發與運維難度,提升版本質量幫助開發者獲得用戶并實現收入的規模增長,快速上架即HUAWEl AppGallery Connect,作為開發者統一提交HarmonyOS生態應用與元服務的入口,集成證書管理、項目管理、版本管理等功能,支持HarmonyOS生態應用、元服務的快速上架與分發,上架審核是指為了給用戶提供更安全且出色的體驗,HUAWEl AppGallery Connect對開發者提交的HarmonyOS生態應用、元服務進行審核與測試,應用/元服務分發是指HUAWEl AppGallery Connect提供了靈活的分發能力,支持按階段、維度、場景等多種形式,高效、精確的分發到用戶設備上,HarmonyOS作為萬物互聯時代,泛終端的載體,面向跨設備多終端環境,實現服務隨身的跨設備無縫體驗,元服務于AI算法深度配合,實現多入口、場景化分發
五、HarmonyOS賦能套件
一站式獲取文檔和賦能資源
賦能套件旨在為開發者提供全方位的支持,幫助開發者更加輕松地進行HarmonyOS應用開發。
開發者可以通過開發者聯盟官網一站式獲取HarmonyOS應用開發文檔。
賦能套件全景
打造業界一流的開發者賦能產品,助力開發者開發卓越應用,按照學習和開發旅程將賦能套件分為四個部分:感知、學習與評估、開發上架、支持
HarmonyOS開發知識地圖,改圖完整涵蓋了開發者從學習到投入項目實戰開發以及應用最終發布上線的全旅程知識導航,
在感知階段,開發者可以通過白皮書了解認識HarmonyOS應用開發的核心理念、關鍵能力和創新體驗
在學習與評估階段,為了幫助開發者能快速上手HarmonyOS應用開發,我們提供了一個快速入門教程,通過手把手的Codelabs教學案例和視頻課程,帶領開發者完成一個HarmonyOS應用的開發,同時,我們為開發者提供了豐富的視頻課程以及一系列配套的Codelabs動手案例,幫助開發者真正掌握HarmonyOS應用開發,還可以結合對應的HarmonyOS應用開發者認證來評估你當前的開發水平;
在開發和上架階段,提供了配套的開發者指南、API參考、最佳實踐、技術文章以及一系列對應的Sample來幫助開發者開發出屬于自己的HarmonyOS應用,還特別準備了一個符合HarmonyOS應用架構設計和最佳實踐的中大型應用——鴻蒙世界(APP)該份代碼已開源,FAQ常見問題解答和開發者論壇則全程支持,為開發者進行答疑解惑。
賦能套件旨在賦能應用開發者高質、高效助力開發者開發出更優用戶體驗的應用
HarmonyOS開發知識地圖
知識地圖
基于開發者任務旅程的知識地圖,聚合官方套件,幫助開發者一站式便捷獲取信息
賦能套件全景——白皮書
《鴻蒙生態白皮書》——《鴻蒙生態應用開發白皮書》和《鴻蒙生態應用安全技術白皮書》全面闡釋了鴻蒙生態下應用開發核心理念、關鍵能力以及創新體驗,旨在幫助開發者快速、準確、全面的了解HarmonyOS開發套件給開發者提供的能力全景和未來的愿景。
快速入門教程
通過手把手的教學實踐案例,從零基礎開始,帶你快速開發一個簡單的HarmonyOS應用,快速掃清繼續學習的障礙,產生開發HarmonyOS應用的興趣。支撐有經驗的開發者,快速投入項目實戰開發。
賦能套件全景——視頻課程
在視頻課程中,開發者可以通過代碼講解的方式深入了解HarmonyOS的技術特性和能力,即學即練,從而更加深入地理解和掌握技術。
基礎課程:
中級課程:
高級課程:
賦能套件全景——CodeLabs
CodeLabs是一種全新發布的場景化案例,它們的數量豐富,分層分級,并且結合了最佳實踐,為開發者提供了豐富的學習資源和實踐經驗。
賦能套件全景——開發指南
開發指南的內容包括相關概念的定義、原理機制的解釋、詳細的開發步驟以及調試驗證的指導等,幫助開發者全面掌握HarmonyOS UI的能力和開發流程。
賦能套件全景——API參考
API參考為開發者提供了清晰的功能描述、詳細的參數說明、完善的權限信息以及規范的示例代碼,能夠幫助開發者更快地理解和使用HarmonyOS的API。
賦能套件全景——最佳實踐
最佳實踐涵蓋了應用架構、性能優化、多端開發實例、流水線搭建等方面,旨在幫助開發者構建高體驗的應用。
HarmonyOS還提供了一個優秀的實踐案例“HMOS世界”APP,展示了HarmonyOS 2D特性在實際開發中的運用。
賦能套件全景——Sample
Sample對于開發者具有實際使用價值,幫助開發者理解技術原理,開發者可重用代碼片段,快速搭建出原型驗證,有助于節省開發時間。
賦能套件全景——FAQ
在HarmonyOS應用開發的全程中,我們還提供了FAQ作為支持,提高開發效率和開發質量。我們為開發者獲取FAQ提供了以下途徑:
- 智能客服:全量FAQ內容的載體,負責主要的內容輸出。開發者輸入FAQ問題內容,即可獲得對應問題的參考答案。
- FAQ:開發者可以瀏覽FAQ的各個分類和問題,找到自己需要的答案。