chinese直男口爆体育生外卖, 99久久er热在这里只有精品99, 又色又爽又黄18禁美女裸身无遮挡, gogogo高清免费观看日本电视,私密按摩师高清版在线,人妻视频毛茸茸,91论坛 兴趣闲谈,欧美 亚洲 精品 8区,国产精品久久久久精品免费

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

完善資料讓更多小伙伴認(rèn)識(shí)你,還能領(lǐng)取20積分哦,立即完善>

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

鴻蒙應(yīng)用模型:【Ability Kit】簡(jiǎn)介

jf_46214456 ? 來源:jf_46214456 ? 作者:jf_46214456 ? 2024-05-29 14:41 ? 次閱讀
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

Ability Kit簡(jiǎn)介

Ability Kit(程序框架服務(wù))提供了應(yīng)用程序開發(fā)和運(yùn)行的應(yīng)用模型,是系統(tǒng)為開發(fā)者提供的應(yīng)用程序所需能力的抽象提煉,它提供了應(yīng)用程序必備的組件和運(yùn)行機(jī)制。有了應(yīng)用模型,開發(fā)者可以基于一套統(tǒng)一的模型進(jìn)行應(yīng)用開發(fā),使應(yīng)用開發(fā)更簡(jiǎn)單、高效。

使用場(chǎng)景

  • 應(yīng)用的多Module開發(fā):應(yīng)用可通過不同類型的Module(HAP、HAR、HSP)來實(shí)現(xiàn)應(yīng)用的功能開發(fā)。其中,HAP用于實(shí)現(xiàn)應(yīng)用的功能和特性,HAR與HSP用于實(shí)現(xiàn)代碼和資源的共享。
  • 應(yīng)用內(nèi)的交互:應(yīng)用內(nèi)的不同組件之間可以相互跳轉(zhuǎn)。比如,在支付應(yīng)用中,通過入口UIAbility組件啟動(dòng)收付款UIAbility組件。
  • 應(yīng)用間的交互:當(dāng)前應(yīng)用可以啟動(dòng)其他應(yīng)用,來完成某個(gè)任務(wù)或操作。比如,啟動(dòng)瀏覽器應(yīng)用來打開網(wǎng)站、啟動(dòng)文件應(yīng)用來瀏覽或編輯文件等。
  • 應(yīng)用的跨設(shè)備流轉(zhuǎn):通過應(yīng)用的跨端遷移和多端協(xié)同,獲得更好的使用體驗(yàn)。比如,在平板上播放的視頻,遷移到智慧屏繼續(xù)播放。
  • 開發(fā)前請(qǐng)熟悉鴻蒙開發(fā)指導(dǎo)文檔 :[gitee.com/li-shizhen-skin/harmony-os/blob/master/README.md]

能力范圍

  • 提供應(yīng)用進(jìn)程創(chuàng)建和銷毀、應(yīng)用生命周期調(diào)度能力。
  • 提供應(yīng)用組件運(yùn)行入口、應(yīng)用組件生命周期調(diào)度、組件間交互等能力。
  • 提供應(yīng)用上下文環(huán)境、系統(tǒng)環(huán)境變化監(jiān)聽等能力。
  • 提供應(yīng)用流轉(zhuǎn)能力。
  • 提供多包機(jī)制、共享包、應(yīng)用信息配置等能力,詳見[應(yīng)用程序包概述]。

應(yīng)用程序包概述

在基于[Stage模型]開發(fā)應(yīng)用之前,開發(fā)者需要了解應(yīng)用的設(shè)計(jì)機(jī)制、應(yīng)用程序包結(jié)構(gòu)等基礎(chǔ)知識(shí)。

應(yīng)用與應(yīng)用程序包

用戶應(yīng)用程序泛指運(yùn)行在設(shè)備的操作系統(tǒng)之上,為用戶提供特定服務(wù)的程序,簡(jiǎn)稱“應(yīng)用”。一個(gè)應(yīng)用所對(duì)應(yīng)的軟件包文件,稱為“應(yīng)用程序包”。

當(dāng)前系統(tǒng)提供了應(yīng)用程序包開發(fā)、安裝、查詢、更新、卸載的管理機(jī)制,便于開發(fā)者開發(fā)和管理應(yīng)用。同時(shí),系統(tǒng)還屏蔽了不同的芯片平臺(tái)的差異(包括x86/ARM,32位/64位等),應(yīng)用程序包在不同的芯片平臺(tái)都能夠安裝運(yùn)行,這使得開發(fā)者可以聚焦于應(yīng)用的功能實(shí)現(xiàn)。

應(yīng)用的多Module設(shè)計(jì)機(jī)制

  • 支持模塊化開發(fā): 一個(gè)應(yīng)用通常會(huì)包含多種功能,將不同的功能特性按模塊來劃分和管理是一種良好的設(shè)計(jì)方式。在開發(fā)過程中,我們可以將每個(gè)功能模塊作為一個(gè)獨(dú)立的Module進(jìn)行開發(fā),Module中可以包含源代碼、資源文件、第三方庫(kù)、配置文件等,每一個(gè)Module可以獨(dú)立編譯,實(shí)現(xiàn)特定的功能。這種模塊化、松耦合的應(yīng)用管理方式有助于應(yīng)用的開發(fā)、維護(hù)與擴(kuò)展。
  • 支持多設(shè)備適配: 一個(gè)應(yīng)用往往需要適配多種設(shè)備類型,在采用多Module設(shè)計(jì)的應(yīng)用中,每個(gè)Module都會(huì)標(biāo)注所支持的設(shè)備類型。有些Module支持全部類型的設(shè)備,有些Module只支持某一種或幾種型的設(shè)備(比如平板),那么在應(yīng)用市場(chǎng)分發(fā)應(yīng)用包時(shí),也能夠根據(jù)設(shè)備類型做精準(zhǔn)的篩選和匹配,從而將不同的包合理的組合和部署到對(duì)應(yīng)的設(shè)備上。

Module類型

Module按照使用場(chǎng)景可以分為兩種類型:

  • Ability類型的Module: 用于實(shí)現(xiàn)應(yīng)用的功能和特性。每一個(gè)Ability類型的Module編譯后,會(huì)生成一個(gè)以.hap為后綴的文件,我們稱其為HAP(Harmony Ability Package)包。HAP包可以獨(dú)立安裝和運(yùn)行,是應(yīng)用安裝的基本單位,一個(gè)應(yīng)用中可以包含一個(gè)或多個(gè)HAP包,具體包含如下兩種類型。

    • entry類型的Module:應(yīng)用的主模塊,包含應(yīng)用的入口界面、入口圖標(biāo)和主功能特性,編譯后生成entry類型的HAP。每一個(gè)應(yīng)用分發(fā)到同一類型的設(shè)備上的應(yīng)用程序包,只能包含唯一一個(gè)entry類型的HAP。
    • feature類型的Module:應(yīng)用的動(dòng)態(tài)特性模塊,編譯后生成feature類型的HAP。一個(gè)應(yīng)用中可以包含一個(gè)或多個(gè)feature類型的HAP,也可以不包含。
  • Library類型的Module: 用于實(shí)現(xiàn)代碼和資源的共享。同一個(gè)Library類型的Module可以被其他的Module多次引用,合理地使用該類型的Module,能夠降低開發(fā)和維護(hù)成本。Library類型的Module分為Static和Shared兩種類型,編譯后會(huì)生成共享包。

    • Static Library:靜態(tài)共享庫(kù)。編譯后會(huì)生成一個(gè)以.har為后綴的文件,即靜態(tài)共享包HAR(Harmony Archive)。
    • Shared Library:動(dòng)態(tài)共享庫(kù)。編譯后會(huì)生成一個(gè)以.hsp為后綴的文件,即動(dòng)態(tài)共享包HSP(Harmony Shared Package)。

    說明:

    實(shí)際上,Shared Library編譯后除了會(huì)生成一個(gè).hsp文件,還會(huì)生成一個(gè).har文件。這個(gè).har文件中包含了HSP對(duì)外導(dǎo)出的接口,應(yīng)用中的其他模塊需要通過.har文件來引用HSP的功能。為了表述方便,我們通常認(rèn)為Shared Library編譯后生成HSP。

    HAR與HSP兩種共享包的主要區(qū)別體現(xiàn)在:

    共享包類型編譯和運(yùn)行方式發(fā)布和引用方式
    HARHAR中的代碼和資源跟隨使用方編譯,如果有多個(gè)使用方,它們的編譯產(chǎn)物中會(huì)存在多份相同拷貝。HAR除了支持應(yīng)用內(nèi)引用,還可以獨(dú)立打包發(fā)布,供其他應(yīng)用引用。
    HSPHSP中的代碼和資源可以獨(dú)立編譯,運(yùn)行時(shí)在一個(gè)進(jìn)程中代碼也只會(huì)存在一份。HSP一般隨應(yīng)用進(jìn)行打包,當(dāng)前只支持應(yīng)用內(nèi)引用,不支持獨(dú)立發(fā)布和跨應(yīng)用的引用。

    圖1 HAR和HSP在APP包中的形態(tài)示意圖
    in-app-hsp-har

  • 提供程序訪問控制能力,詳見[訪問控制概述]。

訪問控制概述

默認(rèn)情況下,應(yīng)用只能訪問有限的系統(tǒng)資源。但某些情況下,應(yīng)用存在擴(kuò)展功能的訴求,需要訪問額外的系統(tǒng)數(shù)據(jù)(包括用戶個(gè)人數(shù)據(jù))和功能,系統(tǒng)也必須以明確的方式對(duì)外提供接口來共享其數(shù)據(jù)或功能。

系統(tǒng)通過訪問控制的機(jī)制,來避免數(shù)據(jù)或功能被不當(dāng)或惡意使用。當(dāng)前訪問控制的機(jī)制涉及多方面,包括應(yīng)用沙箱、應(yīng)用權(quán)限、系統(tǒng)控件等方案。

應(yīng)用沙箱

系統(tǒng)上運(yùn)行的應(yīng)用程序均部署在受保護(hù)的沙箱中,通過沙箱的安全隔離機(jī)制,可以限制應(yīng)用程序的不當(dāng)行為(如應(yīng)用間非法訪問數(shù)據(jù)、篡改設(shè)備等)。每個(gè)程序都擁有唯一的ID([TokenID]),系統(tǒng)基于此ID識(shí)別與限制應(yīng)用的訪問行為。

應(yīng)用沙箱限定了只有目標(biāo)受眾才能訪問應(yīng)用內(nèi)的數(shù)據(jù),并限定了應(yīng)用可訪問的數(shù)據(jù)范圍。

應(yīng)用權(quán)限

系統(tǒng)根據(jù)應(yīng)用的[APL]等級(jí)設(shè)置進(jìn)程域和數(shù)據(jù)域標(biāo)簽,并通過訪問控制機(jī)制限制應(yīng)用可訪問的數(shù)據(jù)范圍,從而實(shí)現(xiàn)在機(jī)制上消減應(yīng)用數(shù)據(jù)泄露的風(fēng)險(xiǎn)。

不同APL等級(jí)的應(yīng)用能夠申請(qǐng)的權(quán)限等級(jí)不同,且不同的系統(tǒng)資源(如:通訊錄等)或系統(tǒng)能力(如:訪問攝像頭、麥克風(fēng)等)受不同的應(yīng)用權(quán)限保護(hù)。通過嚴(yán)格的分層權(quán)限保護(hù),有效抵御惡意攻擊,確保系統(tǒng)安全可靠。

系統(tǒng)控件

系統(tǒng)提供了系統(tǒng)Picker、安全控件等臨時(shí)授權(quán)的方式替代權(quán)限申請(qǐng),在特定的場(chǎng)景中,應(yīng)用無需向用戶申請(qǐng)權(quán)限也可臨時(shí)訪問受限資源,實(shí)現(xiàn)精準(zhǔn)化權(quán)限管控,更好地保護(hù)用戶隱私。

  • [系統(tǒng)Picker]
    由系統(tǒng)獨(dú)立進(jìn)程實(shí)現(xiàn),在應(yīng)用拉起Picker,并由用戶操作Picker后,應(yīng)用可以獲取Picker返回的資源或結(jié)果。舉例說明,當(dāng)應(yīng)用需要讀取用戶圖片時(shí),可通過使用照片Picker,在用戶選擇所需要的圖片資源后,直接返回該圖片資源,而不需要授予應(yīng)用讀取圖片文件的權(quán)限。
  • [安全控件]
    由系統(tǒng)提供UI控件,應(yīng)用在界面內(nèi)集成對(duì)應(yīng)控件,用戶點(diǎn)擊后,應(yīng)用將獲得臨時(shí)授權(quán),從而執(zhí)行相關(guān)操作。舉例說明,當(dāng)應(yīng)用需要分享當(dāng)前位置時(shí),可使用位置控件,用戶點(diǎn)擊后,將會(huì)在本次前臺(tái)期間獲得精準(zhǔn)定位的授權(quán),可以調(diào)用位置服務(wù)獲取精準(zhǔn)定位。當(dāng)發(fā)生滅屏、應(yīng)用切后臺(tái)、應(yīng)用退出等任一情況時(shí),臨時(shí)授權(quán)結(jié)束。

亮點(diǎn)/特征

  1. 為復(fù)雜應(yīng)用而設(shè)計(jì)
    • 多個(gè)應(yīng)用組件共享同一個(gè)ArkTS引擎(運(yùn)行ArkTS語(yǔ)言的虛擬機(jī))實(shí)例,應(yīng)用組件之間可以方便的共享對(duì)象和狀態(tài),同時(shí)減少?gòu)?fù)雜應(yīng)用運(yùn)行對(duì)內(nèi)存的占用。
    • 采用面向?qū)ο蟮拈_發(fā)方式,使得復(fù)雜應(yīng)用代碼可讀性高、易維護(hù)性好、可擴(kuò)展性強(qiáng)。
    • 提供模塊化能力開發(fā)的支持。
  2. 原生支持應(yīng)用組件級(jí)的跨端遷移和多端協(xié)同
    Stage模型實(shí)現(xiàn)了應(yīng)用組件與UI解耦:
    • 在跨端遷移場(chǎng)景下,系統(tǒng)在多設(shè)備的應(yīng)用組件之間遷移數(shù)據(jù)/狀態(tài)后,UI便可利用ArkUI的聲明式特點(diǎn),通過應(yīng)用組件中保存的數(shù)據(jù)/狀態(tài)恢復(fù)用戶界面,便捷實(shí)現(xiàn)跨端遷移。
    • 在多端協(xié)同場(chǎng)景下,應(yīng)用組件具備組件間通信的RPC調(diào)用能力,天然支持跨設(shè)備應(yīng)用組件的交互。
  3. 支持多設(shè)備和多窗口形態(tài)
    應(yīng)用組件管理和窗口管理在架構(gòu)層面解耦:
    • 便于系統(tǒng)對(duì)應(yīng)用組件進(jìn)行裁剪(無屏設(shè)備可裁剪窗口)。
    • 便于系統(tǒng)擴(kuò)展窗口形態(tài)。
    • 在多設(shè)備(如桌面設(shè)備和移動(dòng)設(shè)備)上,應(yīng)用組件可使用同一套生命周期。
  4. 平衡應(yīng)用能力和系統(tǒng)管控成本
    Stage模型重新定義應(yīng)用能力的邊界,平衡應(yīng)用能力和系統(tǒng)管控成本。
    • 提供特定場(chǎng)景(如服務(wù)卡片、輸入法)的應(yīng)用組件,以便滿足更多的使用場(chǎng)景。
    • 規(guī)范化后臺(tái)進(jìn)程管理:為保障用戶體驗(yàn),Stage模型對(duì)后臺(tái)應(yīng)用進(jìn)程進(jìn)行了有序治理,應(yīng)用程序不能隨意駐留在后臺(tái),同時(shí)應(yīng)用后臺(tái)行為受到嚴(yán)格管理,防止惡意應(yīng)用行為。
    • HarmonyOSOpenHarmony鴻蒙文檔籽料:mau123789是v直接拿

鴻蒙文檔.png

與相關(guān)Kit的關(guān)系

ArkUI: Ability Kit在UIAbility組件可以使用ArkUI提供的組件、事件、動(dòng)效、狀態(tài)管理等能力。

ArkTS:ArkTS提供了語(yǔ)言運(yùn)行時(shí)相關(guān)能力。

審核編輯 黃宇

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

    關(guān)注

    1

    文章

    3818

    瀏覽量

    52269
  • Module
    +關(guān)注

    關(guān)注

    0

    文章

    77

    瀏覽量

    13583
  • 鴻蒙
    +關(guān)注

    關(guān)注

    60

    文章

    3018

    瀏覽量

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

掃碼添加小助手

加入工程師交流群

    評(píng)論

    相關(guān)推薦
    熱點(diǎn)推薦

    AURIX? Audio Application Kit for AURIX? lite Kit V2 深度解析

    AURIX? Audio Application Kit for AURIX? lite Kit V2 深度解析 在音頻技術(shù)不斷發(fā)展的今天,一款功能強(qiáng)大且靈活的音頻應(yīng)用套件對(duì)于電子工程師來說至關(guān)重要
    的頭像 發(fā)表于 12-20 20:35 ?1456次閱讀

    【HarmonyOS 5】鴻蒙星閃NearLink詳解

    【HarmonyOS 5】鴻蒙星閃NearLink詳解 ##鴻蒙開發(fā)能力 ##HarmonyOS SDK應(yīng)用服務(wù)##鴻蒙金融類應(yīng)用 (金融理財(cái)# 一、前言 鴻蒙星閃NearLink
    的頭像 發(fā)表于 07-11 18:24 ?2055次閱讀
    【HarmonyOS 5】<b class='flag-5'>鴻蒙</b>星閃NearLink詳解

    【HarmonyOS 5】鴻蒙中的UIAbility詳解(二)

    UIAbility,根據(jù)下圖可知,在鴻蒙中UIAbility繼承于Ability,開發(fā)者無法直接繼承Ability。只能使用其兩個(gè)子類:UIAbility和ExtensionAbility。 本文將對(duì)
    的頭像 發(fā)表于 07-11 18:17 ?1031次閱讀
    【HarmonyOS 5】<b class='flag-5'>鴻蒙</b>中的UIAbility詳解(二)

    鴻蒙中Stage模型與FA模型詳解

    【HarmonyOS 5】鴻蒙中Stage模型與FA模型詳解 ##鴻蒙開發(fā)能力 ##HarmonyOS SDK應(yīng)用服務(wù)##鴻蒙金融類應(yīng)用 (
    的頭像 發(fā)表于 07-07 11:50 ?1080次閱讀

    鴻蒙NEXT-API19獲取上下文,在class中和ability中獲取上下文,API遷移示例-解決無法在EntryAbility中無法使用最新版

    摘要:隨著鴻蒙系統(tǒng)API升級(jí)至16版本(modelVersion5.1.1),多項(xiàng)API已廢棄。獲取上下文需使用UIContext,具體方法包括:在組件中使用getUIContext(),在類中使
    的頭像 發(fā)表于 07-01 10:57 ?901次閱讀
    <b class='flag-5'>鴻蒙</b>NEXT-API19獲取上下文,在class中和<b class='flag-5'>ability</b>中獲取上下文,API遷移示例-解決無法在EntryAbility中無法使用最新版

    鴻蒙開發(fā)API9 到 API12,有哪些不同

    ? ##HarmonyOS 應(yīng)用開發(fā)## 雖然API9已經(jīng)屬于過時(shí)了,但是現(xiàn)在很多學(xué)校里教的還是基于API9的鴻蒙開發(fā),當(dāng)學(xué)生需要在畢業(yè)設(shè)計(jì)中使用API12進(jìn)行開發(fā)時(shí),還是需要先掌握一些兩者的區(qū)別
    發(fā)表于 06-29 22:47

    ArkUI-X通過Stage模型開發(fā)Android端應(yīng)用指南(一)

    簡(jiǎn)介 本文介紹將ArkUI框架擴(kuò)展到Android平臺(tái)所需要的必要的類及其使用說明,開發(fā)者基于OpenHarmony,可復(fù)用大部分的應(yīng)用代碼(生命周期等)并可以部署到Android平臺(tái),降低跨平臺(tái)
    發(fā)表于 06-24 22:16

    HarmonyOS NEXT應(yīng)用開發(fā)-Notification Kit(用戶通知服務(wù))notificationManager.requestEnableNotification10+

    用界面加載完成后(即調(diào)用loadContent成功),方可使用該接口。 模型約束:此接口僅可在Stage模型下使用。 系統(tǒng)能力
    發(fā)表于 06-12 17:28

    鴻蒙Next實(shí)現(xiàn)瀑布流布局

    鴻蒙開發(fā)環(huán)境。打開 DevEco Studio,新建一個(gè)鴻蒙應(yīng)用項(xiàng)目,選擇合適的模板(如 Empty Feature Ability),設(shè)置項(xiàng)目名稱、包名等信息,完成項(xiàng)目創(chuàng)建。 ## 二、布局
    發(fā)表于 06-10 14:17

    FA模型卡片和Stage模型卡片切換

    卡片切換 卡片切換主要包含如下三部分: 卡片頁(yè)面布局:FA模型卡片和Stage模型卡片的布局都采用類web范式開發(fā)可以直接復(fù)用。 卡片配置文件:FA模型的卡片配置在config.json中
    發(fā)表于 06-06 08:10

    FA模型和Stage模型API切換概述

    API切換概述 FA模型和Stage模型由于線程模型和進(jìn)程模型的差異,部分接口僅在FA模型下才能使用,針對(duì)這部分接口在SDK的接口中有FA
    發(fā)表于 06-06 06:29

    從FA模型切換到Stage模型時(shí):module的切換說明

    見下列表格。 表1 FA模型module標(biāo)簽與Stage模型module標(biāo)簽差異對(duì)比 FA標(biāo)簽標(biāo)簽說明對(duì)應(yīng)的Stage標(biāo)簽差異說明mainAbility服務(wù)中心圖標(biāo)露出的ability,常駐進(jìn)程拉起時(shí)會(huì)啟動(dòng)
    發(fā)表于 06-05 08:16

    FA模型綁定Stage模型ServiceExtensionAbility介紹

    FA模型綁定Stage模型ServiceExtensionAbility 本文介紹FA模型的三種應(yīng)用組件如何綁定Stage模型的ServiceExtensionAbility組件
    發(fā)表于 06-04 07:55

    Stage模型綁定FA模型ServiceAbility的方法

    Stage模型綁定FA模型ServiceAbility 本小節(jié)介紹Stage模型的兩種應(yīng)用組件如何綁定FA模型ServiceAbility組件。 UIAbility關(guān)聯(lián)訪問
    發(fā)表于 06-04 06:54

    Stage模型啟動(dòng)FA模型PageAbility方法

    Stage模型啟動(dòng)FA模型PageAbility 本小節(jié)介紹Stage模型的兩種應(yīng)用組件如何啟動(dòng)FA模型的PageAbility組件。 UIAbility啟動(dòng)PageAbility
    發(fā)表于 06-04 06:36