衡阳派盒市场营销有限公司

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

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

3天內不再提示

?HarmonyOS"一次開發,多端部署"優秀實踐——玩機技巧

HarmonyOS開發者 ? 來源:HarmonyOS開發者 ? 作者:HarmonyOS開發者 ? 2023-08-30 10:25 ? 次閱讀

隨著終端設備形態日益多樣化,分布式技術逐漸打破單一硬件邊界,一個應用或服務,可以在不同的硬件設備之間按需調用、互助共享,讓用戶享受無縫的全場景體驗。作為應用開發者,廣泛的設備類型也能為應用帶來廣大的潛在用戶群體。一個應用要在多類設備上提供統一的內容,需要適配不同的屏幕尺寸和硬件,開發成本較高。"一次開發,多端部署"(后文中簡稱為"一多")的應用開發理念,可以讓開發者基于統一的設計,在多類設備上,高效構建可運行的應用。在2023HDC大會上,華為展示了其自研應用"玩機技巧"基于這一理念的優秀實踐。

玩機技巧作為華為終端用戶常用的應用,通過"一多",部署在手機、折疊屏、平板等多設備上,不僅獲得了體驗提升,開發代碼量也下降了約40%。下文,我們將從架構設計、UI設計、交互設計和上架4個層面對玩機技巧應用的"一多"開發進行解讀。

通過"一多",玩機技巧應用部署在不同設備上

三層架構分層設計

玩機技巧通過在一個工程中采用三層架構的分層設計,獲得了能夠支持多種設備的基礎能力,適配差異化和代碼共享也達到最大平衡。

玩機技巧開發將應用拆分成公共能力層(Common)、基礎特性層(Feature)、產品定制層(Product)三層工程結構,支持一套代碼工程一次開發上架,即可多端按需部署。

公共能力層支持網絡框架、工具類、數據管理等能力。

特性層抽象出可復用的高內聚、低耦合的基礎特性集,如富媒體瀏覽、搜索。

在產品定制層,針對多設備存在差異的特性集成UI、資源和配置,如多窗口、分欄體驗,與應用基座解耦等多種因素。通過自適應布局、響應式控件、交互歸一等系統OS能力,以及IDE工程能力,將應用工程歸一,最大化復用代碼,提升設計和開發效率,并兼顧多設備的整體用戶體驗。支撐應用工程歸一、最大化復用代碼,提升了設計和開發效率,兼顧了多設備的整體用戶體驗。

1f014424-46dc-11ee-a2ef-92fbcf53809c.png

玩機技巧應用的三層架構分層設計

多端設計UI自適應

不同設備屏幕尺寸、分辨率等存在差異。HarmonyOS對屏幕進行邏輯抽象,包括尺寸和物理像素,并通過方舟開發框架(簡稱ArkUI)提供豐富的自適應、響應式的布局,方便開發者進行不同屏幕的界面適配。同時,HarmonyOS將人因設計、多端設計UI自適應等經驗,都固化到相關設計指南和ArkUI控件中,讓應用開發者在設計階段就可以考慮多端的差異化和一致性。

在玩機技巧的設計開發中,多設備的體驗在一致性與差異性中取得良好的平衡。首先,玩機技巧界面設計和交互方式在手機和2in1設備上盡量保持一致,首頁采用了統一的信息架構、界面布局、系統控件,減少用戶學習成本。其次,2in1設備在屏幕尺寸、人群場景、操控方式和功能范圍上兼顧一定的差異化設計,滿足了開發者個性化的訴求。

靈活布局

多端設計UI自適應,在同一個柵格模式下切換窗口大小,玩機技巧能夠隨窗口大小的變化而自動適應界面上的所有元素,從而保證動態界面的美觀。當界面窗口變化到一定程度時(斷點),比如從2in1模式拖動窗口變小到手機窗口大小時(從2in1模式切換成手機模式),界面需要響應式變化布局,從而保證應用在不同窗口大小下的展示美觀。

柵格響應式能力

組件作為應用的基礎組成部分,在視覺、交互、動效等表現形式上需針對不同設備進行必要的調整,達到最佳體驗。在玩機技巧中使用一多能力,同一個組件標題欄可實現在手機和2in1的不同樣式。

視覺風格

為了保證各組件風格樣式一致,玩機技巧使用HarmonyOS統一定義的視覺樣式系統資源,即分層參數配置(比如色彩、字號、圓角、間距等)。

交互事件歸一

對于不同類型的終端設備,用戶可能有不同的交互方式,如通過觸摸屏、鼠標、觸控板等。不同輸入設備的相同意圖的輸入指令,交互歸一提供給開發者統一的API。玩機技巧應用一個hap可以安裝在不同設備中,不需要針對不同設備處理交互,極大的精簡了開發難度和開發代碼量。

一次上架按需部署

一次上架后,剩下的工作交給AppGalleryConnect,開發者可以按需部署到不同終端上。

1f61caec-46dc-11ee-a2ef-92fbcf53809c.png

一次上架按需部署邏輯圖

玩機技巧在開發態,通過業務解耦,把不同的業務拆分為多個模塊。在部署態,可以將一個或多個模塊自由組合,打包成一個App Pack統一上架。在分發運行態,每個模塊都可以單獨分發滿足用戶單一使用場景,也可以多個模塊組合分發滿足用戶更加復雜的使用場景。

開發者可以在以下兩種模式中選擇,進行生態應用、元服務的打包和上架。

1f7b5d2c-46dc-11ee-a2ef-92fbcf53809c.png

通過"一多"能力進行打包、上架的兩種模式

如上為玩機技巧在"一多"特性的實踐經驗,希望為開發者提供參考,歡迎更多應用開發者了解并使用"一次開發,多端部署"能力。

聲明:本文內容及配圖由入駐作者撰寫或者入駐合作網站授權轉載。文章觀點僅代表作者本人,不代表電子發燒友網立場。文章及其配圖僅供工程師學習之用,如有內容侵權或者其他違規問題,請聯系本站處理。 舉報投訴
  • 華為
    +關注

    關注

    216

    文章

    34532

    瀏覽量

    252991
  • APP
    APP
    +關注

    關注

    33

    文章

    1577

    瀏覽量

    72774
  • hdc
    hdc
    +關注

    關注

    1

    文章

    44

    瀏覽量

    3618
  • 鴻蒙
    +關注

    關注

    57

    文章

    2392

    瀏覽量

    43050
  • HarmonyOS
    +關注

    關注

    79

    文章

    1982

    瀏覽量

    30573

原文標題:?HarmonyOS"一次開發,多端部署"優秀實踐——玩機技巧,碼上起航

文章出處:【微信號:HarmonyOS_Dev,微信公眾號:HarmonyOS開發者】歡迎添加關注!文章轉載請注明出處。

收藏 人收藏

    評論

    相關推薦

    鴻蒙OS開發:典型頁面場景【一次開發多端部署】(短信)案例介紹

    本章從系統預置的應用中,選擇短信應用作為典型的案例,從頁面開發和工程結構的角度,介紹"多"的具體實踐。系統的產品形態在不斷豐富中,當前主要有默認設備和平板兩種產品形態,本章的具體實踐
    的頭像 發表于 05-28 15:08 ?1363次閱讀
    鴻蒙OS<b class='flag-5'>開發</b>:典型頁面場景【<b class='flag-5'>一次</b><b class='flag-5'>開發</b>,<b class='flag-5'>多端</b><b class='flag-5'>部署</b>】(短信)案例介紹

    鴻蒙OS開發:典型頁面場景【一次開發多端部署】實戰(設置典型頁面)

    本示例展示了設置應用的典型頁面,其在小窗口和大窗口有不同的顯示效果,體現一次開發多端部署的能力。
    的頭像 發表于 05-27 09:36 ?1243次閱讀
    鴻蒙OS<b class='flag-5'>開發</b>:典型頁面場景【<b class='flag-5'>一次</b><b class='flag-5'>開發</b>,<b class='flag-5'>多端</b><b class='flag-5'>部署</b>】實戰(設置典型頁面)

    鴻蒙OS開發:典型頁面場景【一次開發多端部署】實戰(音樂專輯頁2)

    本示例使用[一次開發多端部署]中介紹的自適應布局能力和響應式布局能力進行多設備(或多窗口尺寸)適配,保證應用在不同設備或不同窗口尺寸下可以正常顯示。
    的頭像 發表于 05-25 16:47 ?2170次閱讀
    鴻蒙OS<b class='flag-5'>開發</b>:典型頁面場景【<b class='flag-5'>一次</b><b class='flag-5'>開發</b>,<b class='flag-5'>多端</b><b class='flag-5'>部署</b>】實戰(音樂專輯頁2)

    鴻蒙OS開發:【一次開發多端部署】(視頻應用)

    者提供了“一次開發多端部署”的系統能力,讓開發者可以基于一次
    的頭像 發表于 05-25 16:29 ?4614次閱讀
    鴻蒙OS<b class='flag-5'>開發</b>:【<b class='flag-5'>一次</b><b class='flag-5'>開發</b>,<b class='flag-5'>多端</b><b class='flag-5'>部署</b>】(視頻應用)

    鴻蒙OS開發:【一次開發多端部署】(音樂專輯頁面)

    基于自適應和響應式布局,實現一次開發多端部署音樂專輯頁面。
    的頭像 發表于 05-25 16:21 ?882次閱讀
    鴻蒙OS<b class='flag-5'>開發</b>:【<b class='flag-5'>一次</b><b class='flag-5'>開發</b>,<b class='flag-5'>多端</b><b class='flag-5'>部署</b>】(音樂專輯頁面)

    鴻蒙OS開發:【一次開發多端部署】(多設備自適應能力)簡單介紹

    本示例是《一次開發多端部署》的配套示例代碼,展示了[頁面開發多能力],包括自適應布局、響應
    的頭像 發表于 05-21 14:59 ?2567次閱讀
    鴻蒙OS<b class='flag-5'>開發</b>:【<b class='flag-5'>一次</b><b class='flag-5'>開發</b>,<b class='flag-5'>多端</b><b class='flag-5'>部署</b>】(多設備自適應能力)簡單介紹

    鴻蒙OS開發:【一次開發多端部署】( 設置app頁面)

    本示例展示了設置應用的典型頁面,其在小窗口和大窗口有不同的顯示效果,體現一次開發多端部署的能力。
    的頭像 發表于 05-21 14:56 ?1280次閱讀
    鴻蒙OS<b class='flag-5'>開發</b>:【<b class='flag-5'>一次</b><b class='flag-5'>開發</b>,<b class='flag-5'>多端</b><b class='flag-5'>部署</b>】( 設置app頁面)

    鴻蒙OS開發:【一次開發多端部署】(音樂專輯主頁)

    本示例使用一次開發多端部署中介紹的自適應布局能力和響應式布局能力進行多設備(或多窗口尺寸)適配,保證應用在不同設備或不同窗口尺寸下可以正常顯示。
    的頭像 發表于 05-21 14:48 ?883次閱讀
    鴻蒙OS<b class='flag-5'>開發</b>:【<b class='flag-5'>一次</b><b class='flag-5'>開發</b>,<b class='flag-5'>多端</b><b class='flag-5'>部署</b>】(音樂專輯主頁)

    鴻蒙OS開發:【一次開發多端部署】(多天氣)項目

    本示例展示個天氣應用界面,包括首頁、城市管理、添加城市、更新時間彈窗,體現一次開發多端部署的能力。
    的頭像 發表于 05-20 14:59 ?906次閱讀
    鴻蒙OS<b class='flag-5'>開發</b>:【<b class='flag-5'>一次</b><b class='flag-5'>開發</b>,<b class='flag-5'>多端</b><b class='flag-5'>部署</b>】(<b class='flag-5'>一</b>多天氣)項目

    鴻蒙OS開發:【一次開發多端部署】(天氣應用)案例

    本章通過個天氣應用,介紹多應用的整體開發過程,包括UX設計、工程管理及調試、頁面開發等。
    的頭像 發表于 05-15 15:42 ?1134次閱讀
    鴻蒙OS<b class='flag-5'>開發</b>:【<b class='flag-5'>一次</b><b class='flag-5'>開發</b>,<b class='flag-5'>多端</b><b class='flag-5'>部署</b>】(天氣應用)案例

    鴻蒙OS開發:【一次開發多端部署】(簡介)

    隨著終端設備形態日益多樣化,分布式技術逐漸打破單硬件邊界,個應用或服務,可以在不同的硬件設備之間隨意調用、互助共享,讓用戶享受無縫的全場景體驗。而作為應用開發者,廣泛的設備類型也能為應用帶來廣大
    的頭像 發表于 05-14 15:20 ?1275次閱讀
    鴻蒙OS<b class='flag-5'>開發</b>:【<b class='flag-5'>一次</b><b class='flag-5'>開發</b>,<b class='flag-5'>多端</b><b class='flag-5'>部署</b>】(簡介)

    HarmonyOS開發案例:【一次開發多端部署-音樂專輯】

    基于自適應和響應式布局,實現一次開發多端部署音樂專輯頁面。
    的頭像 發表于 05-13 16:48 ?745次閱讀
    <b class='flag-5'>HarmonyOS</b><b class='flag-5'>開發</b>案例:【<b class='flag-5'>一次</b><b class='flag-5'>開發</b>,<b class='flag-5'>多端</b><b class='flag-5'>部署</b>-音樂專輯】

    HarmonyOS開發案例:【一次開發多端部署(視頻應用)】

    者提供了“一次開發多端部署”的系統能力,讓開發者可以基于一次
    的頭像 發表于 05-11 15:41 ?1566次閱讀
    <b class='flag-5'>HarmonyOS</b><b class='flag-5'>開發</b>案例:【<b class='flag-5'>一次</b><b class='flag-5'>開發</b>,<b class='flag-5'>多端</b><b class='flag-5'>部署</b>(視頻應用)】

    HarmonyOS開發實例:【分布式新聞客戶端】

    基于柵格布局、設備管理和多端協同,實現一次開發多端部署的分布式新聞客戶端頁面。
    的頭像 發表于 04-17 15:57 ?929次閱讀
    <b class='flag-5'>HarmonyOS</b><b class='flag-5'>開發</b>實例:【分布式新聞客戶端】

    HarmonyOS SDK 助力新浪新聞打造精致易用的新聞應用

    用戶帶來更流暢、更智能、更安全的服務體驗。在 HarmonyOS SDK 豐富完備的開放能力加持下,一次開發多端部署的高效
    發表于 02-07 15:51
    e世博百家乐娱乐场| 澳门博彩足球| 棋牌游戏开发公司| 在线百家乐纸牌| 百家乐官网平注法到6| 优博家百家乐官网娱乐城| 博彩| 德州扑克中文版| 天津水果机定位器| 百家乐官网7scs| 百家乐视频游戏平台| 做生意摆放什么会招财| 天天百家乐官网的玩法技巧和规则 | 现金网| 百家乐比赛技巧| 乐中百家乐官网的玩法技巧和规则| ez百家乐官网技巧| 百家乐官网真钱娱乐| 百家乐官网五局八星| 百家乐官网千术道具| bet365 论坛| bet365注册| 华球网| 大发888下载亚洲城| 大发888bet下载| 大发888娱乐场下载ypu| 百家乐平台那家好| 百家乐技巧心得| 百家乐必赢法软件| 百家乐赌场讨论群| 瑞士百家乐的玩法技巧和规则| 百家乐最新分析仪| 大发888代理平台| 高额德州扑克视频| bet365最新地址| 沐川县| 网上百家乐官网有没有假| 百家乐官网龙虎桌布| 致胜百家乐官网的玩法技巧和规则| 风水24山向| 百家乐遥控洗牌器|