一区二区三区三上|欧美在线视频五区|国产午夜无码在线观看视频|亚洲国产裸体网站|无码成年人影视|亚洲AV亚洲AV|成人开心激情五月|欧美性爱内射视频|超碰人人干人人上|一区二区无码三区亚洲人区久久精品

0
  • 聊天消息
  • 系統(tǒng)消息
  • 評論與回復
登錄后你可以
  • 下載海量資料
  • 學習在線課程
  • 觀看技術視頻
  • 寫文章/發(fā)帖/加入社區(qū)
會員中心
創(chuàng)作中心

完善資料讓更多小伙伴認識你,還能領取20積分哦,立即完善>

3天內(nèi)不再提示

淺析:HarmonyOS 一次開發(fā)多端部署

jf_46214456 ? 來源:jf_46214456 ? 作者:jf_46214456 ? 2024-01-22 18:13 ? 次閱讀
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

萬物互聯(lián)時代,應用的設備底座將從幾十億手機擴展到數(shù)百億設備。全新的全場景設備體驗,正深入改變消費者的使用習慣, 同時應用開發(fā)者也面臨設備底座從手機單設備到全場景多設備的轉(zhuǎn)變,通過全場景多設備作為全新的底座,為消費者帶來萬物互聯(lián)時代更為高效澝便捷的體驗。新的場景同時也帶來了新的挑戰(zhàn)澞開發(fā)者不僅要支持更加多樣化的設備,還要支持跨設備的協(xié)作。不同設備類型意味著不同的傳感器能力、硬件能力、屏幕尺寸、操作系統(tǒng)和開發(fā)語言,還意味著差異化的交互方式。同時跨設備協(xié)作也讓開發(fā)者面臨分布式開發(fā)帶來的各種復雜性,例如跨設備的網(wǎng)絡通信、數(shù)據(jù)同步等。若采取傳統(tǒng)開發(fā)模式,適配和管理工作量將非常巨大。當前移動應用開發(fā)中遇到的主要挑戰(zhàn)包括:

  • 針對不同設備上的不同操作系統(tǒng),重復開發(fā),維護多套版本;
  • 多種語言棧,對人員技能要求高;
  • 多種開發(fā)框架,不同的編程范式;
  • 命令式編程,需關注細節(jié),變更頻繁,維護成本高。

為了更好的抓住機遇,應對萬物互聯(lián)所帶來的系列挑戰(zhàn),新的應用生態(tài)應該具備如下特征:

  • 單一設備延伸到多設備:應用一次開發(fā)就能在多個設備上運行,軟件實體能夠從單一設備轉(zhuǎn)移到其他設備上,且多個設備間能夠協(xié)同運行,給消費者提供全新的分布式體驗;
  • 厚重應用模式到輕量化服務模式:提供輕量化的服務,最小化資源消耗,一步直達, 快速完成消費者特定場景的任務;
  • 集中化分發(fā)到 AI 加持下的智慧分發(fā):為消費者提供智慧場景服務,實現(xiàn)“服務找人”;
  • 純軟件到軟硬芯協(xié)同的 AI 能力:提供軟硬芯協(xié)同優(yōu)化的原生 AI 能力,全面滿足應用戶高性能訴求;

以上就是鴻蒙生態(tài)應用開發(fā)白皮書里萬物互聯(lián)時代應用開發(fā)的機遇、挑戰(zhàn)和趨勢章節(jié)里的描述,代表了鴻蒙人的思考和出發(fā)點,接下來我們就簡單解讀下這些挑戰(zhàn)和趨勢是什么?

簡單解讀

具體挑戰(zhàn)是什么?

  • 移動端我們有android,ios兩種主流操作系統(tǒng),開發(fā)語言,接口,所有技術細節(jié)都不一樣,找兩者都會的工程師難,那應用廠商若是要做APP跑不同設備上就得用兩套班子,人力成本大;第二,android,ios分裂產(chǎn)品形態(tài)多,手表,PAD,手機,車機,電視,PC,未來可能更多,那同理對APP開發(fā)維護就是更大的挑戰(zhàn),不同的交互,不同的UI,不同版本,不同團隊,如何保證產(chǎn)品一致,穩(wěn)定,同步,體驗,挑戰(zhàn)巨大;第三再設想下未來,音箱,燈光,空調(diào),冰箱,甚至是廣告牌,監(jiān)視器,攝像頭,無人機,機器人所有的聯(lián)網(wǎng)智能設備,這種面向未來的開發(fā)我們要做什么準備?

下面我們就對這三進行具體分解,也就是上段所指的具體特征:

在應用開發(fā)側(cè)
  • 對應用開發(fā)者,最直接的問題就是UI問題,如布局,樣式,交互等,這個其實大家都有方案,比如說自適應布局,當外部容器大小發(fā)生變化時,元素可以根據(jù)相對關系自動變化以適應外部容器變化的布局能力。相對關系如占比、固定寬高比、顯示優(yōu)先級等。當前自適應布局有4種:[ 線性布局]、[ 層疊布局]、[ 彈性布局]、[ 相對布局]。自適應布局能力可以實現(xiàn)界面顯示隨外部容器大小連續(xù)變化;響應式布局,當外部容器大小發(fā)生變化時,元素可以根據(jù)斷點、柵格或特定的特征(如屏幕方向、窗口寬高等)自動變化以適應外部容器變化的布局能力。當前響應式布局能力有2種:[ 媒體查詢]、[ 柵格布局]。這部分基于華為豐富應用場景的支撐,以及對內(nèi)容的深入理解,使用過程中大家應該能發(fā)現(xiàn)有些空間更智能,更好用;
  • 對應用模型來說,原來android和ios上的原生應用都是厚重的,現(xiàn)在有些應用幾個G,10幾個G都有,平均尺寸也有幾百兆,而鴻蒙化的HAP則提出了新的設計方式,HarmonyOS的用戶應用程序包以APPPack (Application Package)形式發(fā)布,它是由一個或多個 HAPHarmonyOS Ability Package)以及描述每個HAP屬性的pack.info組成。HAP是[ Ability]的部署包,HarmonyOS應用代碼圍繞Ability組件展開。HAR(HarmonyOS Ability Resources)可以提供構建應用所需的所有內(nèi)容,包括源代碼、資源文件和config.json文件。HAR不同于HAP,HAR不能獨立安裝運行在設備上,只能作為應用模塊的依賴項被引用。HSP(HarmonyOS Shared Package):這是一種新增的編譯產(chǎn)物。HSP 使得模塊可以以運行態(tài)復用的形式共享。相較于 HAR,當有多個 HAP 包依賴于同一個 HSP時,最終的打包產(chǎn)物中,HSP 只會存在一份。除了這三種應用包的格式,為了應用輕量化,HarmonyOS提出元服務概念,什么意思?簡單類比就是小程序,形式還是HAP的形式,但是用卡片方式展現(xiàn),歸應用程序框架管理,入口多,易被喚出。最后,應用還分出各種Ability,這是應用程序框架中最基本的抽象單位,代表最小的應用功能單元。在現(xiàn)在主推的Stage模型中,Ability也分兩大類:
    • UIAbility:應用的主入口,對應桌面上的圖標。一個 UIAbility 實例對應一個任務。一個 UIAbility 中的通常包含多個ArkUI頁面;
    • ExtensionAbility:ExtensionAbility 有多個具體的子類型,例如:FormExtension
      用來開發(fā)萬能卡片, InputMethodExtensionAbility 用來開發(fā)輸入法等。

以上這兩點就是從功能和形式上解決了適配不同屏的問題,解決了應用大的問題,也解決了應用形態(tài)的問題,Ability的提出跟解決了界面和功能的問題。鴻蒙運用了解構的方式把大問題拆解成立一些小問題,然后加以實現(xiàn)和演進。當然這后面還包括工程、上架,這部分說起來就是另外一塊事情了,我們今天就不再深入分析。簡答分析下場景:

  • 模式 1:應用或服務的 UI 自適應不同尺寸的設備屏幕,并且在不同設備的功能相同,可以實現(xiàn)多設備共享一個 HAP 包。這種場景下建議開發(fā)者通過一個模塊來開發(fā),并配置該模塊支持多設備,然后再編譯構建生成一個 HAP,分發(fā)到不同類型的設備上運行。
  • 模式 2:應用或服務的 UI、功能在不同設備間存在差異,無法實現(xiàn) HAP 包多設備歸一??筛鶕?jù)實際情況設置不同模塊適用的設備類型,編譯構建多個 HAP 包,一起上架。HUAWEI AppGallery Connect 會自動提取 HAP 中的設備類型的配置信息,為對應的設備自動分發(fā)正確的 HAP 包組合。

在系統(tǒng)開發(fā)側(cè)
  • 事件歸一抽象:不同設備間的交互方式等存在差異,如觸摸、鍵盤、鼠標、語音、手寫筆等,鴻蒙系統(tǒng)將不同設備的輸入映射成歸一交互事件,從而簡化開發(fā)者適配邏輯。以縮放交互為例,通過多指觸控的張合來完成縮放動作,在多設備場景下,縮放交互會出現(xiàn)多種不同的操作輸入方式,比如手表就是表冠旋轉(zhuǎn),鼠標就是滾輪。
  • 組件歸一響應:當應用部署在不同設備上供用戶使用時,需要支持多種 I/O 設備,界面呈現(xiàn)出相應的狀態(tài)為用戶提供正確的視覺引導。例如觸摸時顯示按壓狀態(tài),鼠標特有的懸停狀態(tài),鍵盤走焦狀態(tài)。渇蒙系統(tǒng)默認提供多種交互方式的組件實現(xiàn),方便開發(fā)者支持多種輸入方式。
  • 設備能力抽象:不同設備間的軟、硬件能力等存在差異,如設備是否具備定位能力、是否具備攝像頭、
    是否具備藍牙功能等,鴻蒙系統(tǒng)需要對設備能力進行邏輯抽象,并提供接口來查詢設備是否支持某種能力,方便開發(fā)者進行不同軟、硬件能力的功能適配。在鴻蒙系統(tǒng)中,使用SystemCapability(簡寫為 SysCap)定義每個部件對應用開發(fā)者提供的系統(tǒng)軟硬件能力。應用開發(fā)者基于統(tǒng)一的方式訪問不同設備的能力。
  • 元服務開發(fā):元服務是鴻蒙系統(tǒng)提供的一種全新的應用形態(tài),具有獨立入口,用戶可通過點擊、碰一碰、掃一掃等方式直接觸發(fā),無需顯式安裝,由程序框架后臺靜默安裝后即可使用,可為用戶提供便捷服務。元服務入口多,在服務中心可見,也能通過語音,NFC,攝像頭等聯(lián)動喚入,然后可以用戶無感安裝和卸載,即用即走;元服務還支持流轉(zhuǎn),通過分布式軟總線的加持,元服務支持跨端遷移(將軟件實體從一個設備轉(zhuǎn)移到另一個設備,比如手機視頻遷移到智慧屏)或多設備協(xié)同(多個物理設備上的軟件共同完成一件事情,比如電視投屏+手機遙控,但是這個細分也好幾種,比如顯示協(xié)同,不同大屏和小屏顯示不同東西;交互協(xié)同,手機輸入,智慧屏顯示;算力協(xié)同)。

系統(tǒng)側(cè)開發(fā)想盡辦法提供一站式解決方案,抽象輸入,抽象交互,抽象數(shù)據(jù),抽象硬件,無線壓縮所有的可見路徑,讓應用只聚焦業(yè)務。所以這部分對應用開發(fā)者來說就是統(tǒng)一接口,統(tǒng)一工程,統(tǒng)一規(guī)范;對系統(tǒng)開發(fā)者來說就是一個足夠具象的微服務森林,沒一個端到端的功能都需要仔細梳理并有彈性和生命力。系統(tǒng)側(cè)其實做了太多的工作,軟總線,分布式,ArkUI,應用管理,SA化,大量的細化,解耦工作才能使得應用即服務這樣的能力在系統(tǒng)層生根發(fā)芽。這部分說起來簡單,管理起來那正是千頭萬緒,而且隨著接入硬件形態(tài)的不斷增加、復雜,如何做兼容性,如何保證體驗,如何減低整個系統(tǒng)的可維護性,才是最大的挑戰(zhàn)??梢钥闯鰜恚櫭筛采w千行百業(yè)的決心和勇氣,也可以預見系統(tǒng)的龐雜和勃勃生機。接入廠商的增多,鴻蒙原生應用的增多,希望大家能碰撞出更多的、更實用的場景和一多能力。

審核編輯 黃宇

聲明:本文內(nèi)容及配圖由入駐作者撰寫或者入駐合作網(wǎng)站授權轉(zhuǎn)載。文章觀點僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場。文章及其配圖僅供工程師學習之用,如有內(nèi)容侵權或者其他違規(guī)問題,請聯(lián)系本站處理。 舉報投訴
  • 鴻蒙
    +關注

    關注

    60

    文章

    2618

    瀏覽量

    44038
  • HarmonyOS
    +關注

    關注

    80

    文章

    2126

    瀏覽量

    33018
收藏 人收藏
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

    評論

    相關推薦
    熱點推薦

    HarmonyOS 5】金融應用開發(fā)鴻蒙組件實踐

    HarmonyOS 5】金融應用開發(fā)鴻蒙組件實踐 ##鴻蒙開發(fā)能力 ##HarmonyOS SDK應用服務##鴻蒙金融類應用 (金融理財#
    的頭像 發(fā)表于 07-11 18:20 ?280次閱讀
    【<b class='flag-5'>HarmonyOS</b> 5】金融應用<b class='flag-5'>開發(fā)</b>鴻蒙組件實踐

    HarmonyOS next】ArkUI-X休閑益智猜字謎【基礎】

    ,極大降低了跨端開發(fā)門檻。對于想要同時覆蓋HarmonyOS和iOS生態(tài)的開發(fā)者來說,這無疑是個值得投入的新方向!快來體驗\"一次開發(fā),
    發(fā)表于 06-26 20:01

    鴻蒙5開發(fā)寶藏案例分享---一多開發(fā)實例(地圖導航)

    規(guī)劃頁 :面板滑動時布局自適應變形 3?? 服務卡片 :八宮格靜態(tài)卡片多端通吃 4?? 實況窗 :膠囊形態(tài)+卡片形態(tài)雙展示 最絕的是所有效果都用****ArkUI框架實現(xiàn),完全遵循\"一次開發(fā)
    發(fā)表于 06-03 16:17

    鴻蒙5開發(fā)寶藏案例分享---一多開發(fā)實例(旅行訂票)

    多端適配的黑科技玩出了花!趕緊帶大家來挖寶,手把手解析如何用套代碼征服手機/折疊屏/平板/PC四大終端! ?** 一多開發(fā)核心揭秘** 鴻蒙的\"一次
    發(fā)表于 06-03 16:16

    鴻蒙5開發(fā)寶藏案例分享---一多開發(fā)實例(股票類)

    ?【干貨預警】HarmonyOS開發(fā)隱藏案例大揭秘!手把手教你打造自適應股票APP**?** 大家好!今天要跟大家分享HarmonyOS開發(fā)
    發(fā)表于 06-03 16:13

    鴻蒙5開發(fā)寶藏案例分享---多分欄開發(fā)實踐

    ?【HarmonyOS開發(fā)者的寶藏指南】一次搞定多設備分欄布局,原來還能這么玩! 大家好呀!今天在鴻蒙社區(qū)挖到個超實用的大寶藏——原來官方早就藏了
    發(fā)表于 06-03 12:03

    HarmonyOS5云服務技術分享--Serverless抽獎模板部署

    測試服務PTS 希望這篇教程能幫你快速上手!如果部署過程中遇到問題,歡迎在評論區(qū)留言交流~ 也歡迎關注我的技術博客,每周更新HarmonyOS開發(fā)實戰(zhàn)技巧。祝各位開發(fā)
    發(fā)表于 05-22 20:25

    HarmonyOS5云服務技術分享--ArkTS開發(fā)Node環(huán)境

    氣的方式探索這個功能,結尾還有實用總結和鼓勵彩蛋哦~? ? 、HarmonyOS云函數(shù)開發(fā):核心能力與價值 HarmonyOS的云函數(shù)(Serverless)為
    發(fā)表于 05-22 17:21

    一次消諧裝置與二消諧裝置區(qū)別、一次消諧器與二消諧器的區(qū)別

    一次消諧器與二消諧器是電力系統(tǒng)中用于抑制諧振過電壓的不同裝置,主要區(qū)別如下: 安裝位置:一次消諧器串聯(lián)于電壓互感器(PT)一次側(cè)中性點與地之間,直接承受高電壓;二
    的頭像 發(fā)表于 05-07 09:58 ?1100次閱讀
    <b class='flag-5'>一次</b>消諧裝置與二<b class='flag-5'>次</b>消諧裝置區(qū)別、<b class='flag-5'>一次</b>消諧器與二<b class='flag-5'>次</b>消諧器的區(qū)別

    HarmonyOS 應用開發(fā)賦能套件:鴻蒙原生應用開發(fā)的 “神助攻”

    的課程、文檔、樣例代碼等資源,在開發(fā)者旅程各階段提供全方位的支持。開發(fā)者可以通過鴻蒙開發(fā)者官網(wǎng)站式獲取HarmonyOS賦能套件。 感知階
    發(fā)表于 02-17 16:37

    一次性鋰電池為什么不能充電?文講清!

    一次性鋰電池不能充電,是由它的正負極材料、電解液等決定的。雖然它不能充電,但在某些場景下,還是有著不可替代的作用。希望通過這篇文章,能讓大家對一次性鋰電池有更深入的了解,以后在生活中使用的時候,也能更安全、更環(huán)保。
    的頭像 發(fā)表于 01-23 14:11 ?1209次閱讀
    <b class='flag-5'>一次</b>性鋰電池為什么不能充電?<b class='flag-5'>一</b>文講清!

    一次電源與二電源有什么不同

    在電力系統(tǒng)和電子設備的供電領域中,一次電源與二電源是兩個至關重要的概念。它們各自承擔著不同的功能和角色,共同確保電力供應的穩(wěn)定性和可靠性。本文將對一次電源與二電源的定義、區(qū)別以及它
    的頭像 發(fā)表于 10-10 14:10 ?5084次閱讀

    一次電池分類以及應用場景詳解

    01 一次電池簡介 一次電池即原電池(primarycell、primarybattery)(俗稱干電池),是放電后不能再充電使其復原的電池,通電電池有正極、負極電解以及容器和隔膜等組成。 一次電池
    的頭像 發(fā)表于 09-30 17:52 ?2743次閱讀
    <b class='flag-5'>一次</b>電池分類以及應用場景詳解

    ODU MEDI-SNAP一次性醫(yī)用插拔自鎖插頭產(chǎn)品介紹

    為滿足一次性內(nèi)窺鏡、一次性手術消融刀等設備中的耗材需求,歐度全新推出了MEDI-SNAP一次性醫(yī)用插拔自鎖插頭,為醫(yī)療客戶打造了組在品質(zhì)與經(jīng)濟性上均能滿足需求的高性價比解決方案。
    的頭像 發(fā)表于 09-10 09:59 ?855次閱讀

    labview如何做到一次觸發(fā)采集一次

    最近在做個電壓測試模塊,要求是在個時間段內(nèi),出現(xiàn)個上升沿觸發(fā)采集,并且只采集一次,采集次數(shù)為出現(xiàn)上升沿的次數(shù),采集時間,采樣率及單
    發(fā)表于 08-07 10:16