鴻蒙生態(tài)應(yīng)用開發(fā)白皮書V1.0_第1頁
鴻蒙生態(tài)應(yīng)用開發(fā)白皮書V1.0_第2頁
鴻蒙生態(tài)應(yīng)用開發(fā)白皮書V1.0_第3頁
鴻蒙生態(tài)應(yīng)用開發(fā)白皮書V1.0_第4頁
鴻蒙生態(tài)應(yīng)用開發(fā)白皮書V1.0_第5頁
已閱讀5頁,還剩207頁未讀, 繼續(xù)免費閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認領(lǐng)

文檔簡介

O1O2O3O4?效開發(fā)與測試2)設(shè)計·························4·····O5統(tǒng)▲上架與多端分發(fā)O6O7O?O?22Chapter1萬?互?時代應(yīng)?開發(fā)???澝挑戰(zhàn)和?勢3經(jīng)過十多年的發(fā)展,傳統(tǒng)移動互聯(lián)網(wǎng)的增長紅利已漸見?澞萬物互聯(lián)時代正在開啟,應(yīng)開發(fā)者也?臨設(shè)備底座從手機單設(shè)備到全場景多設(shè)備的轉(zhuǎn)變,通過全場景多設(shè)備作為全新的底座,為消費者帶來萬物互聯(lián)時代更為?效澝便捷的體?澞跨設(shè)備的協(xié)作澞不同設(shè)備類型意味著不同的傳感器能力澝硬件能力澝屏幕尺寸澝操作系統(tǒng)和z命令式編程,?關(guān)注細節(jié),變更?繁,維護成本?澞計算主要在云端數(shù)據(jù)中心進行,?常依賴網(wǎng)絡(luò),具有▲定的時延,且數(shù)據(jù)傳輸?shù)陌踩詽盟矫苄圆荒艿玫接行ПWC澞隨著人們對交互和信息獲取的智能化要求越來越?,移動設(shè)備的計4算能力越來越強,在設(shè)備側(cè)就能提供AI的相關(guān)能力,例如自然語言交互澝環(huán)境智能感知澝的服務(wù)消費者,也是開發(fā)者?臨的全新挑戰(zhàn)澞移動終端上的應(yīng)用生態(tài)發(fā)展到今天也?臨著變?澞傳統(tǒng)厚重的App,整體體?好,功能的顯性操作,這些顯性操作給用戶帶來了實質(zhì)性的使用成本澞輕量化澝可快速達成消費者意圖澝可獨立執(zhí)行澝完成單▲功能的程序?qū)嶓w正成為新的趨勢,例如小程序澝AppClips澝快輕量化的程序?qū)嶓w所具備的“即用即走澝無?安裝卸載澝永遠最新”的特征,也推動了App基于搜索下載的“人找應(yīng)用”的傳統(tǒng)分發(fā)向“服務(wù)找人”的智?分發(fā)的演進澞App遵5z單▲設(shè)備延伸到多設(shè)備:應(yīng)用▲次開發(fā)就能在多個設(shè)備上運行,軟件實體能夠從單▲設(shè)備轉(zhuǎn)移到其他設(shè)備上,且多個設(shè)備間能夠協(xié)同運行,給消費者提供全新的分布式體?澞z厚重應(yīng)用模式到輕量化服務(wù)模式:提供輕量化的服務(wù),最小化資源消耗,▲步直達,快速完成消費者特定場景的任務(wù)澞 澞?性能訴求澞66Chapter2渇???應(yīng)????念7▲次開發(fā),多端部署;可分可合,自由流轉(zhuǎn);統(tǒng)▲生態(tài),原生智能澞1)▁?開發(fā),多???“▲次開發(fā),多端部署”指的是▲套代碼,▲次開發(fā)上架,多端按?部署澞目的是為了8多?開發(fā)?境實時?覽澝分布式調(diào)優(yōu)澝分布式調(diào)測澝超級終端模擬澝低代碼可視化開發(fā)等能力,幫助開發(fā)1.多?雙向??要在不同設(shè)備上查看界?UI顯示,確保實現(xiàn)效果與設(shè)計目標(biāo)▲致澞傳統(tǒng)的開發(fā)模式下,開9備的雙向?覽能力,支持同時查看UI代碼在多個設(shè)備上的?覽效果,并支持UI代碼和?覽2.分布式??渇蒙生態(tài)應(yīng)用具有天然的分布式特征,體現(xiàn)在同▲個應(yīng)用在多個設(shè)備上會有大量的交互澞DevEcoStudio提供了分布式調(diào)試功能,支持跨設(shè)備調(diào)試,通過代碼斷點和調(diào)試堆??梢?.分布式?優(yōu)分布式應(yīng)用的運行性能至關(guān)重要澞在跨端遷移場景中,?要應(yīng)用在目標(biāo)設(shè)備上快速啟動,?要單獨查看每個設(shè)備的性能數(shù)據(jù),并手動關(guān)聯(lián)分析這些數(shù)據(jù),操作繁?,復(fù)雜度?澞4.?????擬移動應(yīng)用開發(fā)時?要使用本地模擬器來進行應(yīng)用調(diào)試,實現(xiàn)快速開發(fā)的目的澞渇蒙生態(tài)模擬終端澝真機設(shè)備也可以自由地組成超級終端,進▲步降低開發(fā)者獲取分布式調(diào)測環(huán)境的?度澞5.低代?可?化開發(fā)覽效果,所見即所得澞通過拖拽式編排澝可視化配置的方式,幫助開發(fā)者減少重復(fù)性的代碼多?開發(fā)?力開發(fā)能力的核心目標(biāo)是降低多設(shè)備應(yīng)用的開發(fā)成本澞為了實現(xiàn)該目標(biāo),渇蒙系統(tǒng)提供了以下幾個核心能力,支持界?和業(yè)務(wù)邏輯代碼復(fù)用,幫助開發(fā)者降低開發(fā)與維護成本,提?代碼1.多?UI??不同設(shè)備屏幕尺寸澝分辨率等存在差異,系統(tǒng)?要對屏幕進行邏輯抽象,包括尺寸和物理像素,并提供豐富的自適應(yīng)/響應(yīng)式的布局和視覺能力,方便開發(fā)者進行不同屏幕的界?PC與智?屏澞開發(fā)者可?向應(yīng)用運行的目標(biāo)設(shè)備進行所屬屏幕類型的適配澞器大小發(fā)生變化時,容器內(nèi)元素可以根據(jù)相對關(guān)系自動變化以適應(yīng)外部容器變化的布局能力澞相對關(guān)系包含占比澝固定寬?比澝顯示優(yōu)先級等澞當(dāng)前自適應(yīng)布局能力主要有7種:拉伸能力澝均分能力澝占比能力澝縮放能力澝延伸能力澝隱藏能力澝折行能力澞自適應(yīng)布局能力可2.事件交互歸▁不同設(shè)備間的交互方式等存在差異,如觸摸澝鍵盤澝?標(biāo)澝語?澝手寫筆等,系統(tǒng)?要對不同輸入方式進行統(tǒng)▲處理,向開發(fā)者提供歸▲的邏輯交互事件澞出現(xiàn)多種不同的操作輸入方式澞為了讓應(yīng)用更好的支持這些縮放交互,渇蒙系統(tǒng)提供如下統(tǒng)操作方式觸屏雙指?合鍵盤Ctrl鍵+?標(biāo)滾輪交互觸控板雙指?合表冠旋轉(zhuǎn)交互件觸屏雙指?合按鍵+滾輪組合按鍵組合點擊事件觸控板雙指?合表冠旋轉(zhuǎn)事件3.?備?力抽?不同設(shè)備間的軟澝硬件能力等存在差異,如設(shè)備是否具備定位能力澝是否具備攝像頭澝持某▲能力,方便開發(fā)者進行不同軟澝硬件能力的功能適配澞在渇蒙系統(tǒng)中,使用應(yīng)用開發(fā)者基于統(tǒng)▲的方式訪問不同設(shè)備的能力澞多?分發(fā)?制如果?要開發(fā)多設(shè)備上運行的應(yīng)用,▲般會針對不同類型的設(shè)備多次開發(fā)并獨立上架澞開發(fā)者開發(fā)多設(shè)備應(yīng)用,只?要▲套代碼,▲次打包出多個HAP,統(tǒng)▲上架,即可根據(jù)設(shè)備類型按?進行分發(fā)澞除了可以開發(fā)傳統(tǒng)的應(yīng)用,開發(fā)者還可以開發(fā)原子化服務(wù)澞原子化服務(wù)是▲種?向未來化服務(wù)?出的機會澞1.多?備按?分發(fā)渇蒙系統(tǒng)提供了兩種模式幫助開發(fā)者基于“▲次開發(fā),多端部署”能力分發(fā)應(yīng)用和原子2.多入口按?分發(fā)渇蒙系統(tǒng)為原子化服務(wù)提供了多設(shè)備澝多入口的分發(fā)能力,基于場景和用戶意圖拉起原????傳統(tǒng)移動生態(tài)下,開發(fā)者通常?要開發(fā)▲個原生應(yīng)用版本,如果提供小程序給用戶,往維護多套版本,通過業(yè)務(wù)解凥將應(yīng)用分解為若干原子化服務(wù)獨立開發(fā),按?根據(jù)場景組合成景澝合適的設(shè)備上便捷使用澞原子化服務(wù)是支?可分可合,自由流轉(zhuǎn)的輕量化程序?qū)嶓w,幫z觸手可及:原子化服務(wù)可以在服務(wù)中心發(fā)現(xiàn)并使用,同時也可以基于合適場景被主動推薦給用戶使用,例如用戶可在服務(wù)中心和小藝建議中發(fā)現(xiàn)系統(tǒng)推薦的服務(wù)澞z服務(wù)直達:原子化服務(wù)無?安裝卸載,“秒開體?”,即點即用,即用即走澞z服務(wù)卡片:支持用戶無?打開原子化服務(wù)便可獲取服務(wù)內(nèi)重要信息的展示和動態(tài)變化,如天氣澝關(guān)鍵事務(wù)備忘澝熱點新聞列表澞z自由流轉(zhuǎn):原子化服務(wù)支持運行在多設(shè)備上并按?跨端遷移,或者多個設(shè)備協(xié)同起來給用戶提供最優(yōu)的體?澞例如手機上未完成的郵件,遷移到平板繼續(xù)編輯,手機作為手柄,與智?屏配合玩游戲,獲得新奇游戲體?澞都?要單獨上架澞在運行態(tài),應(yīng)用和服務(wù)的生命周期完全獨立澞????多個設(shè)備間來回切換澞因此應(yīng)用能夠在設(shè)備之間流轉(zhuǎn),不間斷給用戶提供服務(wù)的能力就變得?常重要澞自由流轉(zhuǎn)可分為跨端遷移和多端協(xié)同兩種情況澞它們分別是時間上的串行交互和時間上的并行交互澞自由流轉(zhuǎn)不僅帶給用戶全新的交互體?,也為開發(fā)者搭建了▲座從單設(shè)備時代3)?▁??,原???系統(tǒng)上,則?要對不同的系統(tǒng)進行單獨的開發(fā)或者適配澞為了降低開發(fā)成本澝提?代碼復(fù)用力,對開發(fā)者提供簡潔易用的API,幫助開發(fā)者快速?成API,助力應(yīng)用智能化澞?▁??渇蒙系統(tǒng)支持業(yè)界主流跨平臺開發(fā)框架,通過多層次的開放能力提供統(tǒng)▲接入標(biāo)準(zhǔn),實現(xiàn)三方框架快速接入,支?快速豐富渇蒙生態(tài)應(yīng)用澝原子化服務(wù)澞?原??應(yīng)用智能化澞同時也提供軟硬芯協(xié)同優(yōu)化的系統(tǒng)級推理框架并?留擴展,滿足開發(fā)者的?階服務(wù)能力開放層:為原子化服務(wù)提供多樣化澝場景化的智能入口,讓開發(fā)者的服務(wù)能夠應(yīng)用能力開放層:?向應(yīng)用開發(fā)者提供的簡單易用澝功能強大的場景化AI能力澞z智?語?:可視可說,提供通過說出界?文字澝圖標(biāo)澝角標(biāo)信息即可輕松操控界?z計算視覺:包含圖片識別澝文本識別澝視?內(nèi)容分析澝人臉識別澝人體檢測等常用z?效部署:支持MindSpore/TensorFlowLite/Caffe/Onnx模型,提供模型壓縮澝數(shù)據(jù)處理等能力,統(tǒng)▲訓(xùn)練和推理IR(IntermediateRepresentation方便用戶快速部署澞Chapter3渇???應(yīng)?開發(fā)?力全景圖-2)渇蒙開發(fā)套件-4)開發(fā)者支持平臺圍繞開發(fā)者旅程,渇蒙系統(tǒng)為開發(fā)者提供了端到端的開發(fā)能力支持澞如下圖所示,渇蒙系統(tǒng)為開發(fā)者提供了賦能套件澝渇蒙開發(fā)套件澝三方庫澝開發(fā)者支持平臺澞具體能力全景圖1)??套件定場景的應(yīng)用開發(fā)并掌握相關(guān)知識澞Codelabs將最新的渇蒙生態(tài)應(yīng)用開發(fā)技術(shù)與典型場景和效果聯(lián)動為開發(fā)者帶來更佳的學(xué)習(xí)體?澞提供全新的學(xué)習(xí)體?澞開發(fā)澞指南涉及到的知識點包括必要的背景知識澝符合開發(fā)者實際開發(fā)場景的操作任務(wù)流的設(shè)計資源,滿足各種場景的設(shè)計要求,可以幫助開發(fā)者設(shè)計出體?▲致的渇蒙生態(tài)應(yīng)用澞API參考詳細地描述了每個接口的功能澝使用限制澝參數(shù)名澝參數(shù)類型澝參數(shù)含義澝取值范圍澝權(quán)限澝注意事?澝錯誤碼及返回值等澞SampleCode:?向不同類型的開發(fā)者提供的渇蒙生態(tài)應(yīng)用開發(fā)優(yōu)秀實踐,每個2)渇?開發(fā)套件渇蒙開發(fā)套件包含設(shè)計澝開發(fā)澝測試澝運維套件以及OS開放能力?澞通過渇蒙開發(fā)套件,開發(fā)者可以?效開發(fā)渇蒙生態(tài)應(yīng)用澝原子化服務(wù)澞??套件HarmonyOSDesign是?向萬物互聯(lián)的設(shè)計系統(tǒng),為用戶帶來全新交互體?澞其?承?成的性能調(diào)優(yōu)澝設(shè)備模擬澝命令行工具和SDK澞DevEcoStudio:渇蒙生態(tài)應(yīng)用澝原子化服務(wù)開發(fā)配套的?成開發(fā)環(huán)境(IDE提供了請訪問/cn/develop/deveco-studio獲取最??套件1.???準(zhǔn)覆蓋渇蒙生態(tài)應(yīng)用性能澝功耗澝穩(wěn)定性澝兼容性澝UX澝安全澝流轉(zhuǎn)澝游戲等測試規(guī)范,后臺長?任務(wù)/托管任務(wù)場景功耗澝后臺硬件器件資源/軟件系統(tǒng)資糊澝?邊及白塊等UX顯示異常澞游戲?效澝消息免打擾澝幀率澝屏幕點時延澝GPU使用率及后殼溫2.??工具提供渇蒙生態(tài)應(yīng)用開發(fā)澝調(diào)試澝單元測試澝?成測試澝上架測試等各開發(fā)階段所?的測試工具?,支持手機澝折疊屏澝平板澝智?屏澝手表澝?箱等1+8+N設(shè)備,幫助開發(fā)者全??效測試澞專?測試套件覆蓋性能澝功耗澝穩(wěn)定性澝兼容性澝UX澝安全共6?專?自控件查找澝點擊澝檢視澝按鍵注入等模擬用戶操作的API澞應(yīng)用性能能效調(diào)優(yōu)和測試工具平臺;提供測試過程中實時采?FPS澝RAM澝CPU澝GPU等性能數(shù)據(jù)的采?能力,同時提供性應(yīng)用UI隨機壓測工具,提供UI隨機事件注入澝控件級事件?本地速測工具,支持兼容性澝設(shè)計約束澝性能等專?測試,無?編寫用例;?成于DevEcoStudio▲鍵式測試澞??套件1.上?分發(fā)???力可以讓開發(fā)者的應(yīng)用在正式發(fā)布給所有用戶前,?向特定用戶群組發(fā)布測試版本澞參與測試的用戶可以向開發(fā)者反?,幫助開發(fā)者及開發(fā)者在開發(fā)測試?證完成后,正式提交應(yīng)用上架申請,審核人員的版本更新,可以快速獲取用戶對新版本的反?意見,降低全網(wǎng)發(fā)2.??分?給用戶帶來仫糕體?澞云服務(wù)監(jiān)控是?向云函數(shù)澝云數(shù)據(jù)庫等云服務(wù)的質(zhì)量監(jiān)控解OS開放?力?硬件服務(wù)等澞1.ArkUI??式采用更接近自然語義的編程方式,開發(fā)者可以直觀地描述UI界?,無?關(guān)心框架如何實呈現(xiàn)效果澞開發(fā)者可以組合?置組件為自定義組件,通過這種方式將??組件轉(zhuǎn)化為▲個個獨立的UI單元,實現(xiàn)??不同單元的獨立創(chuàng)建澝開發(fā)和復(fù)用澞器給開發(fā)者提供了清晰的??更新?染流程和管道澞狀態(tài)管理包括組件和應(yīng)用狀態(tài)管理,合理使用兩種狀態(tài)管理機制,可以在不同場景中僅通過改變數(shù)據(jù),自動刷新UI澞現(xiàn)?效的業(yè)務(wù)開發(fā)澞2.Ability應(yīng)用所具備能力的抽象,是應(yīng)用程序的基本組成部分,主要包括組件生命周期回調(diào)澝系z基于MVVM(Model?View?ViewModel)模型:充分結(jié)合ArkUI的聲明式UI特性,應(yīng)用更易于實現(xiàn)界?與邏輯解凥澞3.分布式?務(wù)通信方式各不相同(比如Wi-Fi澝藍牙澝ETH澝PLC澝NFC澝USB澝Zigbee澝紅外澝超聲波等為了使開發(fā)者可以方便快捷地進行分布式開發(fā),渇蒙系統(tǒng)將跨設(shè)備交互涉及的關(guān)鍵能信協(xié)議帶來的差異澞分布式軟總線通過軟硬件協(xié)同,提供?吞吐澝低時延澝?可?澝安全可信的通信通道,克服無線通信不可?澝不穩(wěn)定的挑戰(zhàn),為開發(fā)者提供接近本分布式文件系統(tǒng)是▲個直接構(gòu)建在內(nèi)核態(tài),無中心澝?性能的文件系統(tǒng)澞提供了標(biāo)z分布式數(shù)據(jù)庫:基于分布式軟總線實現(xiàn)數(shù)據(jù)的分布式管理澞用戶數(shù)據(jù)不再與單▲物z分布式硬件:打破單▲設(shè)備的硬件邊界,是軟件定義各種新產(chǎn)品形態(tài)和體?的“新硬件”所?的關(guān)鍵技術(shù)澞分布式硬件能夠?qū)⒂布O(shè)備化整為?,形成“超級終端”硬件資源池,供多個設(shè)備共享使用,真正達到軟件定義硬件澝設(shè)備間實現(xiàn)系統(tǒng)級壝合并靈活按?適應(yīng)不同場景的目的澞環(huán)境澝用戶等的各類狀態(tài)的感知能力,例如設(shè)備的擺放?態(tài)澝操作行為澝多設(shè)備間的空間拓撲關(guān)系澝用戶的移動狀態(tài)澝位置信息,甚至是用戶的情緒等澞壝合感知目行澝乘坐直梯澝自行車澝走澝跑澝?止?jié)每觳阶邼?鐵澝步行澝電梯澝相對?止?jié)檬殖植叫袧锰?澝智能?行澝?機澝車載(不包含地鐵澝火車澝?鐵等軌道交通和自行車之外的交通工具)澝停Modem基站澝WIFI掃描信息,判斷用戶手機狀態(tài):?精度?止?jié)弥芯?止等澞能夠感知操作手勢,比如拿起澝翻轉(zhuǎn)澝?近耳?澝搖▲搖澝旋各個設(shè)備之間的安全流轉(zhuǎn),?要保證設(shè)備之間相互正確可信,即設(shè)備和設(shè)備之間建立信任關(guān)系,并能夠在?證信任關(guān)系后搭建安全的連接通道,實現(xiàn)用戶數(shù)據(jù)的安全傳輸澞設(shè)備之間的信任關(guān)系包括同帳號設(shè)備之間的可信關(guān)系,以及點對點綁定的設(shè)備可信關(guān)系澞指紋識別澝人臉識別等生物認證手段澞根據(jù)不同認證方式的安全能力和特點,可應(yīng)用于相應(yīng)的身份認證場景,如設(shè)備解鎖澝應(yīng)用鎖,移動支付等澞同時,針對分布式業(yè)務(wù)場景,為提升用戶認證的便捷性,渇蒙系統(tǒng)提供分布式協(xié)同認證能力,使用戶能力,系統(tǒng)化地規(guī)范應(yīng)用程序的行為準(zhǔn)則與權(quán)限許可并強制執(zhí)行澞由于應(yīng)用通過沙箱機制彼此?離,?認情況下,應(yīng)用只能訪問有限的系統(tǒng)資源澞但應(yīng)用為了擴展功能,?要訪問沙箱外的系統(tǒng)或其它應(yīng)用的數(shù)據(jù)或能力,系統(tǒng)或應(yīng)用也?要具備共享理機制提供了程序操作某種對象的許可,在應(yīng)用層?,使用顯式定義且經(jīng)用戶授權(quán)▲個階段,數(shù)據(jù)都能獲得與其個人數(shù)據(jù)敏感程度澝系統(tǒng)數(shù)據(jù)重要程度和應(yīng)用程序數(shù)據(jù)資產(chǎn)價值匹配的保護措施澞數(shù)據(jù)創(chuàng)建時即指定數(shù)據(jù)分級標(biāo)簽,基于標(biāo)簽關(guān)聯(lián)全生密措施澞在數(shù)據(jù)傳輸時,?敏感等級的數(shù)據(jù)禁止向低安全能力的設(shè)備上傳遞,同時禁止低安全能力的設(shè)備發(fā)出指令控制?敏感等級的資源和外設(shè)澞?險比較大澞數(shù)據(jù)防泄漏保護服務(wù)保證數(shù)據(jù)跨設(shè)備傳輸?shù)搅怼O(shè)備后,依然具有相5.方???器(ArkCompiler)支持多種編程語言澝多種芯片平臺聯(lián)合編譯澝運行而設(shè)計的統(tǒng)▲編譯運行時平臺澞支持包括動態(tài)類型和?態(tài)類型語言在內(nèi)的多種編程語言,如ArkTS澝JS澝TS澞方舟編譯器是渇蒙系統(tǒng)作為手機澝PC澝平板澝電視澝車機和智能穿戴等多種設(shè)備統(tǒng)▲操作系統(tǒng)的編譯運行時底座澞主要分成兩個部分,編譯工具鏈與運行時澞編譯工具鏈以的類型信息并將其傳遞給運行時澞運行時直接使用類型信息在運行前?生成內(nèi)聯(lián)緩可以利用字節(jié)碼文件中的類型信息,直接編譯生成優(yōu)化機器碼,使得應(yīng)用可以直接運行優(yōu)化機器碼,獲得?性能運行體?澞開發(fā)澞Actor模型下執(zhí)行體之間不共享任何數(shù)據(jù)對象,通過消息機制進行通信澞因?qū)ο螅ǚ椒ê妥止?jié)碼)的共享,較大程度地優(yōu)化了Actor的啟動性能和啟動內(nèi)存澞z簡潔的并發(fā)API:方舟編譯運行時不只提供了業(yè)界通用的WorkerAPI,還提供了動擴縮容的任務(wù)池功能庫澞開發(fā)者無?關(guān)心并發(fā)實例的生命周期,也無?關(guān)心任務(wù)負載變化時?要創(chuàng)建或者銷毀并發(fā)實例,極大地簡化了?性能多線程渇蒙應(yīng)用的開并且還提供了多重混淆能力的增強,有效地提升了開發(fā)者代碼資產(chǎn)的安全強度澞同406.基??件?務(wù)渇蒙系統(tǒng)為開發(fā)者提供了通用的基礎(chǔ)軟件服務(wù),包括多媒體澝通信澝圖形澝文件存儲澝升級澝無?礙等,下?介紹三個常用的服務(wù)澞z多媒體服務(wù)是指用戶聽覺澝視覺信息的表達澝存儲和還原的處理過程澞多媒體服務(wù)確保在不同設(shè)備上運行的性能和體?,同時也為應(yīng)用開發(fā)者提供統(tǒng)▲的接口,讓開???服務(wù):提供??播放澝??采?澝?量管理和短?播放的能力澞z通信服務(wù)為各種各樣的終端設(shè)備提供多樣信息的傳遞,渇蒙系統(tǒng)提供業(yè)界主流和常通知的相應(yīng)服務(wù),讓應(yīng)用可以通過WLAN和其他設(shè)備互聯(lián)互通澞41為系統(tǒng)提供流暢?效的顯示體?澞圖形系統(tǒng)按功能維度分為?染服務(wù)澝繪制澝動畫澝染的圖層進行合成,送顯的過程澞427.?件?務(wù)?控制:提供設(shè)置傳感器的數(shù)據(jù)采樣間?和數(shù)據(jù)上報間?等控制能力澞衛(wèi)星定位系統(tǒng)結(jié)合在▲起提供的▲種增值業(yè)務(wù),通過▲組定位技術(shù)獲得移動終端的),43?被動定位:提供被動定位功能,允許應(yīng)用進行被動定位,該種類型定位不會?地理圍欄:提供地理圍欄的能力,支持圍欄添加和刪除澝圍欄事件訂閱和取華為移動服務(wù)開放能力是為渇蒙生態(tài)應(yīng)用開發(fā)提供場景化服務(wù)的平臺澞同時,依托華為提供行業(yè)解決方案澞下?介紹▲些常用的服務(wù):錄應(yīng)用澞支持用戶信息授權(quán)澝▲鍵授權(quán)登錄澝多帳號切換澝家長管控澝數(shù)字遺產(chǎn)繼承等澞44者更好地提?消息對用戶的?引力澞提供精細化人群劃分的能力,可以根據(jù)用戶屬z分析服務(wù):免費的跨平臺澝多設(shè)備數(shù)據(jù)分析產(chǎn)品,清晰理解用戶行為方式,輕松實現(xiàn)數(shù)據(jù)?動的精細化運營澞標(biāo)識服務(wù),可以保護用戶隱私,也可以幫助廣告平臺和三方監(jiān)測平臺合規(guī)地開展個性化廣告和轉(zhuǎn)化歸因澞zC/C??語言的三方庫,在應(yīng)用開發(fā)中通過NAPI的方式來使用澞45個人/組織帖獻者通過DevEcoStudio將開發(fā)好的三方庫發(fā)布到資源中心澞開發(fā)者遵循如4)開發(fā)?支持平臺z開發(fā)者社區(qū):開發(fā)者技術(shù)交流平臺,幫助開發(fā)者探索開發(fā)實踐澝交流心得經(jīng)?澝獲悉業(yè)界動態(tài)澝答疑解惑澞46z開發(fā)者學(xué)堂:聚合官方渇蒙生態(tài)課程,課程有慕課澝微課澝直播課澝訓(xùn)練營等多種滿足開發(fā)者不同階段的學(xué)習(xí)訴求澞處理和在線技術(shù)支持澞4747Chapter4?效開發(fā)與??-5)用戶程序框架-7)?成開發(fā)環(huán)境-8)測試工具481)典型開發(fā)場景務(wù)成為▲個復(fù)雜的應(yīng)用澞對于大型游戲類應(yīng)用,可以直接開發(fā)渇蒙生態(tài)應(yīng)用,針對智?屏澝2)???信息,文件中轉(zhuǎn)站澝智?視覺等創(chuàng)新功能,帶來全場景智?生活新體?澞格澝動效澝聲?澝多態(tài)控件澝界?用語澝全球化澝無?礙澝隱私設(shè)計等澞49適配多尺寸界?澞?創(chuàng)自適應(yīng)UI引擎,自動學(xué)習(xí)優(yōu)化布局,提升開發(fā)效率與實現(xiàn)3)ArkTS??明式UI澝狀態(tài)管理等相應(yīng)的能力,讓開發(fā)者以更簡潔澝更自然的方式開發(fā)?性能應(yīng)用澞TS進,包括引入分布式開發(fā)范式澝并行和并發(fā)能力增強澝類型系統(tǒng)增強等方?的語言特性澞比如父子組件之間,?ㄋ組件之間,也可以是全局范圍內(nèi)的傳遞,還可以是跨設(shè)備傳遞澞另發(fā)范式,再結(jié)合UI組件澝狀態(tài)管理等方?設(shè)計,統(tǒng)▲渇蒙生態(tài)應(yīng)用的開發(fā)范式澞4)ArkUI??發(fā)范式開發(fā)更加簡潔?效澞?Web開發(fā)?式?自動觸發(fā)更新澞此種開發(fā)范式,對Web前端開發(fā)者更為友好澞與JS三種類型的文件進行??開發(fā),開發(fā)者可以基于此范式方便地進行UI構(gòu)建,同時提供zHML語法:是▲套類HTML的標(biāo)記語言,通過組件澝事件構(gòu)建出??的內(nèi)容澞??具備數(shù)據(jù)綁定澝事件綁定澝列表?染澝條件?染和邏輯控制等?級能力澞在HML文也可在??CSS樣式文件中對組件澝??自定義不同的樣式澞ArkUI開發(fā)框架提供標(biāo)準(zhǔn)CSS語法的核心功能?,滿足應(yīng)用開發(fā)者的訴求澞用類Web開發(fā)范式的優(yōu)勢所在,采用統(tǒng)▲的開發(fā)范式,開發(fā)者無?關(guān)心具體運行時的前端聲明式開發(fā)?式相同場景下,對比類Web開發(fā)范式代碼更為精簡,并且在性能澝內(nèi)存方?進▲步優(yōu)化提升澞下?針對重點功能進行詳細介紹說明澞1.????狀態(tài)管理從生效范圍的維度可以分為應(yīng)用范圍和組件范圍澞應(yīng)用范圍的數(shù)據(jù)是以AppStorage為中心進行管理,根據(jù)不同的使用場景分為提供系統(tǒng)環(huán)境數(shù)據(jù)管理的zΞState:組件擁有的狀態(tài)屬性,當(dāng)ΞState裝?的變量更改時,組件會重新?染更zΞLink:組件依賴于其父組件擁有的某些狀態(tài)屬性,當(dāng)任何▲個組件中的數(shù)據(jù)更新zΞProp:類似ΞLink,但子組件所做的更改不會同步到父組件上,屬于單向傳遞澞zΞConsume:在感知到ΞProvide數(shù)據(jù)更新后,會觸發(fā)當(dāng)前自定義組件的重新?染澞zΞStorageLink裝?器:組件通過使用ΞStorageLink?key?裝?的狀態(tài)變量,與ΞStorageLink的狀態(tài)變量的組件時,該狀態(tài)變量的值將使用AppStorage中的值進行初始化澞在UI組件中對ΞStorageLink的狀態(tài)變量所做的更改將同步到AppStorage,并從AppStorage同步到任何其他綁定實例中,如PersistentStoragezΞStorageProp裝?器:組件通過使用ΞStorageProp?key?裝?的狀態(tài)變量,將與ΞStoageProp的狀態(tài)變量的組件時,該狀態(tài)變量的值將使用AppStorage中的值進2.?件化3.UI元???器zΞBuilder:可通過ΞBuilder裝?器進行描述,該裝?器可以修?▲個函數(shù),此函數(shù)可以在build函數(shù)之外聲明,并在build函數(shù)中或其他ΞBuilder修?的函數(shù)中使用,將多條樣式設(shè)置提煉成▲個方法,直接在組件聲明的位置使用澞ΞStyles裝?器將支持通用屬性澞通過ΞStyles裝?器可以快速定義并復(fù)用組件的自定義樣式澞ΞStyles可以定義在組件內(nèi)或組件外,在組件外定義時?在方法前添加function關(guān)鍵字,組件內(nèi)定義時不?要添加function關(guān)鍵字澞zΞExtend:為了滿足開發(fā)者拓展原生組件的訴求,提供了ΞExtend裝?器,可以將新的屬性函數(shù)添加到內(nèi)置組件上,如Text澝Column澝Button等澞通過ΞExtend裝?器可以快速地擴展原生組件澞數(shù)據(jù)變化?動動畫啟動,而不再是直接控制動畫的播放澞UI框架根據(jù)開發(fā)者的配置,自動z屬性動畫:組件的某些通用屬性變化時,可以通過屬性動畫實現(xiàn)漸變效果,提升用戶體?澞z轉(zhuǎn)場動畫:轉(zhuǎn)場動畫包括??間轉(zhuǎn)場澝組件內(nèi)過渡轉(zhuǎn)場和共享元素轉(zhuǎn)場三種,通過路由接口進行??路由時,會觸發(fā)動畫的執(zhí)行澞的onScrollIndex列表?滾動事件,這類事件屬于?冒泡事件(?冒泡事件指的是當(dāng)染語法控制UI組件的顯隱狀態(tài),該事件屬于?冒泡事件澞6.?制?力7.?合開發(fā)這種?要依賴C++SDK進行獨立?染,又或者開發(fā)相機澝視?播放器這種?要獨立紋理填充的場景,因此?要框架提供▲種能夠在C++側(cè)進行自定義繪制的組件澞ArkUI框架提供了可?可?開發(fā)可視可說框架提供“系統(tǒng)級”和“應(yīng)用級”兩種實現(xiàn)方式澞其中,“系統(tǒng)級”無?應(yīng)用適配自動支持標(biāo)準(zhǔn)控件文本的語?操控功能;“應(yīng)用級”接入方式允許開發(fā)者對控件場景澝角標(biāo)澝別名澝個性化播報等元素進行適配,從而提供最佳的用戶體?澞應(yīng)用級和系統(tǒng)級兩種實現(xiàn)是互補關(guān)系,應(yīng)用級優(yōu)化用戶體?,系統(tǒng)級保證覆蓋率澞1.???支持界?文本可視可說基礎(chǔ)體?澞2.應(yīng)??獲得可視可說最佳體?澞3.??交互?命周?可視可說分為信息獲取和識別執(zhí)行,信息獲取模塊基于界?變化用戶監(jiān)聽界?變化獲取信息熱詞,識別執(zhí)行模塊將信息熱詞傳遞到語?系統(tǒng)進行AI識別澞z語?喚醒:語?助手喚醒后,發(fā)送建立連接給前臺應(yīng)用,應(yīng)用收到請求后啟動可視?獲取信息:智?語?獲取界?熱詞信息,包括文本,圖標(biāo)和角標(biāo)信息澞?語?識別:智?語?系統(tǒng)根據(jù)用戶語?和界?信息熱詞,識別出可視可說意z語?結(jié)束:語?助手釋放可視可說,發(fā)送解除綁定給前臺應(yīng)用,應(yīng)用收到解除連接??用戶程序框架是操作系統(tǒng)對應(yīng)用程序架構(gòu)的抽象,通過它可以完成渇蒙應(yīng)用澝原子化服類型的Ability:Stage?型?短時任務(wù):對于所有應(yīng)用,在退到后臺之后,系統(tǒng)提供了▲個短期的可運行?長時任務(wù):對于?樂播放,投屏,導(dǎo)航這類場景,系統(tǒng)提供了長時任務(wù)的能力澞?要注意的是,長時任務(wù)的具體類型也是由系統(tǒng)明確定義的,應(yīng)用應(yīng)當(dāng)根據(jù)實際?要來申請,而不應(yīng)當(dāng)過度濫用澞?延時任務(wù):對于▲些實時性要求不?的場景,系統(tǒng)提供了延時任務(wù)澞這種情況下,會由系統(tǒng)統(tǒng)▲周期,對?多個應(yīng)用的任務(wù)激活時間澞?托管任務(wù):除此之外,系統(tǒng)還提供了托管任務(wù),這類任務(wù)是由系統(tǒng)完成,完z原生支持組件級的跨端遷移和多端協(xié)同:渇蒙系統(tǒng)是原生支持分布式的操作系統(tǒng),應(yīng)用框架?要從架構(gòu)設(shè)計上使得組件更易于實現(xiàn)遷移和協(xié)同澞Stage模型通過Ability與UI分離,以及UI展示與服務(wù)能力合▲等模型特性,實現(xiàn)這▲設(shè)計目標(biāo)澞z支持多設(shè)備和多窗口形態(tài):為了支持多種設(shè)備形態(tài)和更易于實現(xiàn)多種不同的窗口形態(tài),?要組件管理服務(wù)和窗口管理服務(wù)在架構(gòu)層?上是解凥的,從而方便裁剪,更有利于定制不同的窗口形態(tài)澞Stage模型通過重新定義Ability生命周期定義,設(shè)計z為復(fù)雜應(yīng)用設(shè)計:多應(yīng)用組件在運行時共享同▲個虛擬機引擎,從而減少復(fù)雜應(yīng)用運行內(nèi)存的占用澞采用?向?qū)ο蟮拈_發(fā)方式,使得復(fù)雜應(yīng)用代碼可讀性?澝易維護z程序邏輯與用戶界?解凥:窗口部分可單獨銷毀和重建,窗口與Ability可跨設(shè)備運z開放的擴展能力點:支持卡片澝輸入法澝快捷開關(guān)澝分享澝壁紙澝長時任務(wù)等應(yīng)用SDK包含了應(yīng)用開發(fā)所?的API定義和基礎(chǔ)工具?澞語言澞渇蒙系統(tǒng)提供的每個接口都屬于▲個特定的版本,例如:APIVersion8,API建議使用CAPI的場景:應(yīng)用性能敏感場景,如游戲,物理模擬等計算密?型場景;復(fù)用已有的C或C++庫場景;?要針對CPU特性進行專?定制場景,如neon加速等澞中事件接口,供開發(fā)者開發(fā)?性能圖形應(yīng)用使用應(yīng)用框架?成的三方的異步IO庫接口制源N-API接口?性能C語言能力澞開發(fā)者開發(fā)▲個C/C++的ArkTS擴展庫后,在ArkTS側(cè)可以通過方?工具?件,在程序運行階段進行解釋執(zhí)行;這種運行方式?要設(shè)備有強大的計算能力澞渇蒙系統(tǒng)能保證多類型設(shè)備的體?▲致性澞在渇蒙開發(fā)環(huán)境中,應(yīng)用代碼是通過前端編譯器完成編譯的澞前端編譯器按照語言規(guī)范解析源代碼,編譯成方舟運行時能夠理解的二進制字節(jié)碼格式(ABC,ArkCompilerByteCode最后打包到應(yīng)用中澞前端編譯器是渇蒙應(yīng)用框架與其它JS應(yīng)用框架最主要的差別之▲澞下圖展示了兩種編譯運行方式的差別,方舟前端工具鏈把解析源碼澝編譯字節(jié)碼前端流水線在發(fā)起編譯時,進行工程參數(shù)解析,依賴分析,語法校?,語法轉(zhuǎn)換,代碼編譯等各個編譯動作的編排澞前端編譯器負責(zé)編譯流水線中源代碼編譯,提供對應(yīng)的觸發(fā)接為兩種編譯模式澞分別是bundle和esmodule編譯模式澞兩者的區(qū)別主要在源碼文件的處變,通過前端編譯器編譯成ABC字節(jié)碼文件,字節(jié)碼文件內(nèi)保留各個模塊的代碼段,依賴前???器??7)?成開發(fā)?境HUAWEIDevEcoStudio是?向渇蒙生態(tài)的?成開發(fā)環(huán)境,提供了▲站式的渇蒙生態(tài)工???模板創(chuàng)建渇蒙生態(tài)應(yīng)用澝原子化服務(wù),使用渇蒙視圖聚焦到關(guān)鍵文件及配置,也能導(dǎo)入樣例z工程向?qū)В洪_發(fā)者基于模板,方便地創(chuàng)建出工程(Project應(yīng)用模塊(Module庫模塊(LibraryAbility,服務(wù)卡片(ServiceWidget)等開發(fā)態(tài)元素,快速得到渇蒙生態(tài)應(yīng)用開發(fā)所?的?目結(jié)構(gòu)澞z渇蒙視圖:通過渇蒙視圖,可以過濾掉應(yīng)用開發(fā)中無?特別關(guān)注的文件,如工具自z模板市場:模板市場提供了豐富的工程模板,支持模板的發(fā)布及更新,HUAWEIDevEcoStudio可以檢測到新版本并更新澞開發(fā)者也可以通過模板市場分享自己開代???薦內(nèi)容更完整,開發(fā)人員可以更快速地完成渇蒙生態(tài)應(yīng)用澝原子化服務(wù)開發(fā)澞同時,時提示代碼錯誤,支持快速糾錯,可?效地將建議修復(fù)結(jié)果應(yīng)用于代碼中澞????DevEcoStudio提供了界??覽能力,使開發(fā)者更方便快速地調(diào)測應(yīng)用界?,大幅提升界?z???覽:可快速查看應(yīng)用/服務(wù)中??UI代碼的呈現(xiàn)效果澞z卡片?覽:可查看多種卡片規(guī)格澝多種卡片尺寸(最小/標(biāo)準(zhǔn)/最大)的呈現(xiàn)效果澞在不同上下文中的?覽效果澞z自定義?覽profile:?覽profile是設(shè)備顯示能力的抽象定義,典型的profile信息有設(shè)備名稱澝設(shè)備類型澝屏幕分辨率澝屏幕密度澝語言澝亮暗模式澝橫豎屏狀態(tài)等澞通過自定義?覽profile,開發(fā)者能自由組合設(shè)備顯示能力,查看UI代碼在不同設(shè)備z實時?覽:開發(fā)者修改UI代碼,保存后可秒級刷新?覽界?,界?調(diào)測效率倍增澞z動態(tài)?覽:在?覽界?中提供點擊澝滑動澝鍵盤輸入等交互能力,操作體?與真機???建化管理,為開發(fā)者提供自動化的構(gòu)建服務(wù)澞其具備強大的構(gòu)建能力,支持多種語言(ArkTS澝精確增量檢查,?度復(fù)用往次構(gòu)建產(chǎn)物,縮短編譯時長;最優(yōu)化編排任務(wù)序列,異步化執(zhí)行編譯操作,減小等待間?,加速構(gòu)建流程澞z差異構(gòu)建:內(nèi)置多目標(biāo)構(gòu)建機制,允許開發(fā)者靈活選擇源碼文件澝資源信息澝部署設(shè)備等應(yīng)用要素,形成多種組合澞通過簡易配置,匹配自定義構(gòu)建目標(biāo),▲鍵打包z獨立運行:擁有完善的命令行工具,兼?zhèn)淞己玫目缙脚_能力,可以脫離HUAWEIDevEcoStudio,獨立運行在Windows澝Mac澝Linux等操作系統(tǒng)上,支持不同環(huán)境代???變量值查詢澝表達式計算澝調(diào)試堆棧澝命令行工具等澞此外,基于渇蒙系統(tǒng)的特點,還提供z分布式調(diào)試:分布式調(diào)試用于定位跨設(shè)備交互場景下的代碼缺陷澞使用跨設(shè)備的斷點調(diào)試,可以使斷點在不同設(shè)備的代碼間跳轉(zhuǎn),自動尋找目標(biāo)設(shè)備并建立調(diào)試會話澞通過查看跨設(shè)備的調(diào)試堆棧,可以快速準(zhǔn)確地跟蹤設(shè)備交互的詳細情況,包括每次z跨語言調(diào)試:支持ArkTS和C/C??兩種語言同時調(diào)試,并支持斷點從ArkTS語言跳轉(zhuǎn)到被調(diào)用的C/C??語言;提供統(tǒng)▲的調(diào)試堆棧,便于快速查閱兩種語言代碼的調(diào)用層次關(guān)系,整體操作體?與單▲語言調(diào)試▲致澞zHotReload:修改代碼后,無?重新創(chuàng)建調(diào)試會話和啟動渇蒙生態(tài)應(yīng)用澝原子化服z多維日志:查看系統(tǒng)消息日志時,可根據(jù)設(shè)備澝進程澝日志級別以及自定義的規(guī)則???優(yōu)優(yōu)化過程充滿挑戰(zhàn),?要開發(fā)者了解應(yīng)用程序框架澝系統(tǒng)澝硬件各方?知識,并對多維度性自動采?相應(yīng)維度性能數(shù)據(jù)澞常用場景化調(diào)優(yōu)模板如表4?2所示澞耗時分析模板:通過周期性采?調(diào)用棧,識別CPU耗時?的熱點率澝Trace等數(shù)據(jù),可用于分析卡?澝運行速度慢澝應(yīng)用無響應(yīng)等啟動分析模板:錄制和還原從點擊應(yīng)用圖標(biāo),到顯示?幀過程中的?備?擬取的調(diào)測?證環(huán)境澞端提供了差異化的交互界?,方便開發(fā)者快速在多個模擬終端上開發(fā)調(diào)試應(yīng)用澞此外,開發(fā)者可以▲鍵配置分布式組網(wǎng),組成模擬超級終端,支持對分布式應(yīng)用進行z場景化數(shù)據(jù)注入:通過場景化的數(shù)據(jù)注入能力,開發(fā)者能快速模擬▲些常見的設(shè)備使用場景,方便調(diào)試應(yīng)用在特定場景下的功能澞包括低電量澝弱網(wǎng)絡(luò)信號澝搖▲搖澝z統(tǒng)▲設(shè)備管理:支持對模擬設(shè)備澝超級終端澝本地真機設(shè)備澝遠程真機設(shè)備的統(tǒng)▲管理,方便開發(fā)者快速切換調(diào)試設(shè)備,▲鍵配置超級終端澞命令?工具zbytrace:對內(nèi)核ftrace進行了封裝和擴展,配合應(yīng)用打點,追蹤進程軌跡,分析?云▁體化開發(fā)發(fā)渇蒙生態(tài)應(yīng)用澝原子化服務(wù)的云側(cè)服務(wù),提供端云▲體的開發(fā)體?澞z端云▲體化開發(fā):支持端側(cè)代碼和云側(cè)代碼的協(xié)同開發(fā),統(tǒng)▲管理端側(cè)和云側(cè)代碼z端云▲體化組件:內(nèi)置完整的云側(cè)邏輯,開發(fā)者在?成UI組件的同時即可自動實現(xiàn)具有開箱即用澝▲鍵部署澝自動彈性伸縮澝免運維等特點,開發(fā)者可聚焦業(yè)務(wù)邏輯8)??工具渇蒙生態(tài)應(yīng)用澝原子化服務(wù)的測試分層模型分為:單元測試澝?成測試澝專?測試澞單元??單元測試是函數(shù)級別的?證澞函數(shù)是產(chǎn)品開發(fā)實現(xiàn)的最基本單位,單元測試通過?證產(chǎn)????單元用插件化機制開發(fā),具備空間占用最小化澝功能可定制澝語法兼容特點澞測試框架的整體結(jié)備核心接口和邏輯澞擴展模塊是在核心模塊的基礎(chǔ)上增加▲些常用能力,例如用例超時控制澝?成???成測試分為模塊測試和特性測試澞模塊測試把若干個單元組裝,發(fā)現(xiàn)模塊缺陷;特性測試把若干個模塊?成,發(fā)現(xiàn)特性缺陷澞渇蒙生態(tài)為開發(fā)者提供多種?成測試的能力,方便開發(fā)者針對不同的?成測試場景,快速便捷的進行測試澞1.UI????通過簡潔易用的API提供查找和操作界?控件能力,支持開發(fā)者編寫基于界?操作的自UI測試能力入口類,實現(xiàn)與設(shè)備交互,提供??控件查找澝檢查??元素查找條件,用于描述目標(biāo)控件特性(文本澝id澝類型??元素實體類,返回查找的控件對象,提供控件屬性查詢,滑動2.????工具zSmartPerf?Host:可視化展示設(shè)備側(cè)抓取的性能數(shù)據(jù),幫助開發(fā)者快速發(fā)現(xiàn)和分析系統(tǒng)性能瓶?澞zSmartPerf?Device:支持設(shè)備側(cè)FPS澝功耗澝熱澝Soc信息的實時采?澝實時展示和數(shù)據(jù)報告生成澞?置或安裝在設(shè)備中使用,針對帶屏設(shè)備,測試過程中在設(shè)備懸浮窗實時展示測試過程中的性能數(shù)據(jù);對于無屏設(shè)備,通過命令行獲取測試過程中trace自動抓取與報告展示,用戶自定義采?場景及采?指標(biāo)等功能澞?應(yīng)用RAM澝FPS等數(shù)據(jù)采?澞作可操作采?任務(wù)開始澝暫停澝繼續(xù)澝停止?jié)膶崟r監(jiān)控采?數(shù)據(jù)的數(shù)值變化,通過折線圖查查看csv報告,報告?查看圖形化展示澞?通過采?的trace分析冷熱啟動,點擊完成時時延澝界?滑動幀率等自動化測試澞用戶操作腳本的錄制澝回放澝采?點設(shè)置澞性能采?數(shù)據(jù)結(jié)果的報告呈現(xiàn)及數(shù)據(jù)異常的性能測試?支持冷啟動多輪測試功能澞3.?定???工具z系統(tǒng)接口管理:檢查并獲取指定的mgr,注冊controller和dfx的faultlog的回調(diào)函z事件注入:根據(jù)支持的事件類型向系統(tǒng)注入事件,依賴窗口澝多模澝安全等子系統(tǒng)澞zHDC命令行:依賴hdc將命令下發(fā)至設(shè)備端,支持exec和special兩類命令?澞4.分布式?備錄制回放z事件識別Ο智能定位:多個設(shè)備通過USB同步時鐘,按時間?序處理監(jiān)聽到的設(shè)備事件,根據(jù)事件的坐標(biāo)等信息結(jié)合當(dāng)前設(shè)備顯示??的結(jié)構(gòu)智能識別還原真實的操專???專?測試是應(yīng)用/服務(wù)的多維度測試,包括全方位的質(zhì)量體檢,同時也提供性能澝功耗澝穩(wěn)定性澝兼容性澝UX澝安全等專?自動化測試澞1.應(yīng)?與?務(wù)體??明確支持的設(shè)備類型澞最終的檢測報告中按照測試維度進行分層展示,根據(jù)每條規(guī)則的權(quán)重,綜合算出應(yīng)用/2.專???云?平臺DevEcoTesting專?測試服務(wù)以云端服務(wù)的方式提供了多維度的專?測試能力,無?人工干?,自動完成應(yīng)用/服務(wù)的測試澞專?測試報告可以幫助開發(fā)者提前識別和定位問?,為消費者帶來更佳的使用體?澞云端的DevEcoTesting專?測試服務(wù)提供了多設(shè)備環(huán)境,可用于▲次開發(fā)多端部署測云端測試包含設(shè)計約束澝安全漏洞檢測澝隱私合規(guī)檢測澝兼容性測試澝穩(wěn)定性測試澝性能測試澝功耗測試澝UX測試澞可檢測應(yīng)用或服務(wù)從安裝澝啟動澝運行澝卸載全生命周期的Chapter5?▁上?與多?分發(fā)?HUAWEIAppGalleryConnect作為開發(fā)者統(tǒng)▲提交入口,?成證書管理澝?目管理澝?書?發(fā)z開發(fā)者生成自己的公私鑰對(KeyStore并且使用IDE生成軟件證書請求文件z開發(fā)者上傳軟件證書請求文件,生成軟件發(fā)布證書,選擇對應(yīng)的證書可以創(chuàng)建應(yīng)用?▁上?z應(yīng)用管理:提供應(yīng)用的基本信息管理,支持配置全球化名稱,管理圖標(biāo)澝截圖澝描z版本管理:維護應(yīng)用的版本信息,支持配置發(fā)布區(qū)域澝發(fā)布范圍澝應(yīng)用資費澝內(nèi)容z上架檢測:支持對應(yīng)用進行基礎(chǔ)信息檢測,包括API澝包名澝簽名澝資源等,以及?審上?渇蒙生態(tài)應(yīng)用澝原子化服務(wù)進行嚴(yán)格的審核與測試澞開發(fā)者?了解并遵循澦華為應(yīng)用市場審?fù)ㄟ^動/?態(tài)檢測,識別是否存在隱私?險,比如違規(guī)收?個人信息澝超范圍收?個人信息澝違規(guī)使用個人信息澝強制/?繁/過通過真機檢測,保?分發(fā)設(shè)備的兼容性,支持檢測是否存在崩否存在色情澝暴?違禁澝賭博澝毒品澝政敏澝低?澝禁播等違規(guī)2)應(yīng)?分發(fā)種形式,?效澝精準(zhǔn)地分發(fā)到用戶設(shè)備上澞分發(fā)???,不斷改進應(yīng)用質(zhì)量,持續(xù)提供優(yōu)質(zhì)服務(wù)澞分發(fā)?度方式,從而實現(xiàn)?效分發(fā),提升用戶體?澞?次下載應(yīng)用時,只下載基本功能模塊,僅在執(zhí)行到動態(tài)特性時才按?下載,既滿??分發(fā)簽體系,構(gòu)建以用戶體?為中心的多場景澝多模態(tài)澝全球化搜索引擎,?效連接渇蒙生態(tài)和全球消費者?的個性化推薦服務(wù),精準(zhǔn)觸達目標(biāo)用戶?向合作伙伴提供精準(zhǔn)澝優(yōu)質(zhì)澝?效的推廣服務(wù),支持?向安3)?務(wù)分發(fā)隨身”的跨設(shè)備無縫體?,原子化服務(wù)與AI算法深度配合,實現(xiàn)多入口澝場景化分發(fā)澞多入口分發(fā)包括設(shè)備入口澝系統(tǒng)入口澝應(yīng)用入口,場景化分發(fā)是系統(tǒng)在理解用戶的基礎(chǔ)上,結(jié)合用戶旅程的▲種多服務(wù)組合分發(fā),從用戶場景出發(fā),圍繞用戶旅程的場景化閉環(huán)澞例如用戶想去旅游,出行前要查看天氣澝?定機票酒店澝購買門票,旅途中要去機場澝打車澝結(jié)束1.協(xié)同?合于用戶意圖途中語?介紹景點,接近景點時,啟動購票服務(wù)澞2.?????內(nèi)容主動推薦服務(wù),使用戶能發(fā)現(xiàn)所?服務(wù)澞z留存:系統(tǒng)提供優(yōu)質(zhì)原子化服務(wù)和內(nèi)容,?引用戶將服務(wù)留存在桌?,并為用戶提供統(tǒng)▲的原子化服務(wù)查看澝搜索澝收藏和管理功能澞??分發(fā)發(fā)核心能力分為感知澝知識與理解澝推理三層:z感知層:精確感知用戶場景,是服務(wù)智能分發(fā)的基礎(chǔ)澞根據(jù)多個終端的硬件傳感信?特別說明,以上場景感知信息均在用戶知情同意的前提下收?澞z知識與理解層:知識與理解層是智能分發(fā)決策的重要依據(jù),圍繞核心場景,持續(xù)構(gòu)建澝學(xué)習(xí)澝豐富知識,并基于全?感知與知識增強,精準(zhǔn)理解用戶意圖澞感知數(shù)據(jù)以將原子化服務(wù)與統(tǒng)▲全局意圖進行關(guān)聯(lián)澞理澞通過基于規(guī)則的召回澝熱度召回澝協(xié)同召回澝深度學(xué)習(xí)模型召回等多路召回方式,為每個用戶召回與其意圖澝興趣相關(guān)的原子化服務(wù),同時通過端云壝合排序模型將召回的服務(wù)進行排序,并將top服務(wù)展示給用戶澞Chapter6????與分布式???境-1)價值與架構(gòu)定義串行交互:指用戶相繼使用多個設(shè)備澞此類交互場景要求具備較?的連續(xù)性澝▲致性澞z連續(xù)性:當(dāng)用戶從▲個設(shè)備轉(zhuǎn)向另外▲個設(shè)備的時候,最新的操作狀態(tài)應(yīng)當(dāng)是繼續(xù)z▲致性:當(dāng)用戶在使用手表澝手機澝大屏等不同設(shè)備時,交互方式與基礎(chǔ)視覺元素并行交互:指用戶同時使用多個設(shè)備澞此類交互場景要求具備較?的協(xié)作性澝互補性澞z協(xié)作性:多個設(shè)備彼此交互協(xié)調(diào),完成▲?任務(wù)澞z互補性:利用設(shè)備的本身形態(tài)差異,完成▲?任務(wù)澞例如,當(dāng)用戶在家里找不到電對于并行交互與串行交互兩者典型場景,渇蒙系統(tǒng)分布式運行環(huán)境分別提供了與之對應(yīng)1)價值與??定義z自由流轉(zhuǎn)提供了應(yīng)用跨設(shè)備流轉(zhuǎn)的能力澞應(yīng)用開發(fā)只?遵循框架并適配指定的API,z自由流轉(zhuǎn)框架實現(xiàn)了流轉(zhuǎn)過程,包括流轉(zhuǎn)任務(wù)發(fā)布澝應(yīng)用免安裝澝數(shù)據(jù)序列化澝兼???設(shè)備管理服務(wù):提供設(shè)備管理相關(guān)的能力澞設(shè)備管理服務(wù)在系統(tǒng)中的定位是?分布式軟總線:主要提供基于近場通信技術(shù)的通信網(wǎng)絡(luò),實現(xiàn)分布式設(shè)備之可管理澝業(yè)務(wù)質(zhì)量可?期澞?智能決策服務(wù):提供智能化的設(shè)備篩選能力澝設(shè)備排序能力澞設(shè)備篩選能力解除的全生命周期管理能力,支?設(shè)

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論