吴忠躺衫网络科技有限公司

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

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

3天內不再提示

鴻蒙Ability Kit(程序框架服務)【Want概述】

jf_46214456 ? 來源:jf_46214456 ? 作者:jf_46214456 ? 2024-06-06 09:16 ? 次閱讀

Want概述

Want的定義與用途

[Want]是一種對象,用于在應用組件之間傳遞信息

其中,一種常見的使用場景是作為[startAbility()]方法的參數。例如,當UIAbilityA需要啟動UIAbilityB并向UIAbilityB傳遞一些數據時,可以使用Want作為一個載體,將數據傳遞給UIAbilityB。

圖1 Want用法示意
usage-of-want

Want的類型

  • 顯式Want :在啟動目標應用組件時,調用方傳入的want參數中指定了abilityName和bundleName,稱為顯式Want。
    顯式Want通常用于在當前應用中啟動已知的目標應用組件,通過提供目標應用組件所在應用的Bundle名稱信息(bundleName)并在Want對象內指定abilityName來啟動目標應用組件。當有明確處理請求的對象時,顯式Want是一種簡單有效的啟動目標應用組件的方式。
import Want from '@ohos.app.ability.Want';

let wantInfo: Want = {
  deviceId: '', // deviceId為空表示本設備
  bundleName: 'com.example.myapplication',
  abilityName: 'FuncAbility',
}
  • 隱式Want :在啟動目標應用組件時,調用方傳入的want參數中未指定abilityName,稱為隱式Want。
    當需要處理的對象不明確時,可以使用隱式Want,在當前應用中使用其他應用提供的某個能力,而不關心提供該能力的具體應用。隱式Want使用[skills標簽]來定義需要使用的能力,并由系統匹配聲明支持該請求的所有應用來處理請求。例如,需要打開一個鏈接的請求,系統將匹配所有聲明支持該請求的應用,然后讓用戶選擇使用哪個應用打開鏈接。

    import Want from '@ohos.app.ability.Want';
    
    let wantInfo: Want = {
      // uncomment line below if wish to implicitly query only in the specific bundle.
      // bundleName: 'com.example.myapplication',
      action: 'ohos.want.action.search',
      // entities can be omitted
      entities: [ 'entity.system.browsable' ],
      uri: 'https://www.test.com:8080/query/student',
      type: 'text/plain',
    };
    

    新文檔.png

    說明:
    開發前請熟悉鴻蒙開發指導文檔 :[gitee.com/li-shizhen-skin/harmony-os/blob/master/README.md]

    • 根據系統中待匹配應用組件的匹配情況不同,使用隱式Want啟動應用組件時會出現以下三種情況。
      • 未匹配到滿足條件的應用組件:啟動失敗。
      • 匹配到一個滿足條件的應用組件:直接啟動該應用組件。
      • 匹配到多個滿足條件的應用組件(UIAbility):彈出選擇框讓用戶選擇。
    • 對于啟動ServiceExtensionAbility的場景:
      • 調用方傳入的want參數中帶有abilityName,則不允許通過隱式Want啟動ServiceExtensionAbility。
      • 調用方傳入的want參數中帶有bundleName,則允許使用startServiceExtensionAbility()方法隱式Want啟動ServiceExtensionAbility,默認返回優先級最高的ServiceExtensionAbility,如果優先級相同,返回第一個。

審核編輯 黃宇

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

    關注

    0

    文章

    403

    瀏覽量

    17543
  • 鴻蒙
    +關注

    關注

    57

    文章

    2392

    瀏覽量

    43055
收藏 人收藏

    評論

    相關推薦

    鴻蒙開發接口Ability框架:【@ohos.application.Ability (Ability)】

    Ability模塊提供對Ability生命周期、上下文環境等調用管理的能力,包括Ability創建、銷毀、轉儲客戶端信息等。
    的頭像 發表于 04-30 17:42 ?2340次閱讀
    <b class='flag-5'>鴻蒙</b>開發接口<b class='flag-5'>Ability</b><b class='flag-5'>框架</b>:【@ohos.application.<b class='flag-5'>Ability</b> (<b class='flag-5'>Ability</b>)】

    鴻蒙Ability Kit程序框架服務)【ServiceExtensionAbility】

    [ServiceExtensionAbility]是SERVICE類型的ExtensionAbility組件,提供后臺服務能力,其內部持有了一個[ServiceExtensionContext],通過[ServiceExtensionContext]提供了豐富的接口供外部使用。
    的頭像 發表于 06-04 14:50 ?1285次閱讀
    <b class='flag-5'>鴻蒙</b><b class='flag-5'>Ability</b> <b class='flag-5'>Kit</b>(<b class='flag-5'>程序</b><b class='flag-5'>框架</b><b class='flag-5'>服務</b>)【ServiceExtensionAbility】

    鴻蒙Ability Kit程序框架服務)【UIExtensionAbility】

    [UIExtensionAbility]是UI類型的ExtensionAbility組件,需要與[UIExtensionComponent]一起配合使用,開發者可以在UIAbility的頁面中通過UIExtensionComponent嵌入提供方應用的UIExtensionAbility提供的UI。UIExtensionAbility會在獨立于UIAbility的進程中運行,完成其頁面的布局和渲染。常用于有進程隔離訴求的系統彈窗、狀態欄、膠囊等模塊化開發的場景。
    的頭像 發表于 06-05 09:19 ?1485次閱讀
    <b class='flag-5'>鴻蒙</b><b class='flag-5'>Ability</b> <b class='flag-5'>Kit</b>(<b class='flag-5'>程序</b><b class='flag-5'>框架</b><b class='flag-5'>服務</b>)【UIExtensionAbility】

    鴻蒙Ability開發-Stage模型下Ability的創建和使用

    函數 HiLog日志系統可以讓應用按照指定類型、指定級別、指定格式字符串打印日志內容,幫助開發者了解應用/服務的運行狀態,更好地調試程序。 HiLog提供了debug、info、warn、error以及fatal
    發表于 01-08 15:34

    HarmonyOS NEXT應用元服務開發Intents Kit(意圖框架服務)本地搜索方案概述

    一、概述 本地搜索是在HarmonyOS歸一化搜索特性,開發者將應用/元服務內的功能和內容通過意圖框架共享到HarmonyOS,即可實現“一步搜索,內容直達”。 二、典型場景 以“音樂垂域”的“歌曲
    發表于 11-06 10:59

    HarmonyOS NEXT應用元服務開發Intents Kit(意圖框架服務)綜述

    一、綜述 Intents Kit(意圖框架服務)是HarmonyOS級的意圖標準體系 ,意圖連接了應用/元服務內的業務功能。 意圖框架能幫開
    發表于 11-28 10:43

    鴻蒙開發接口Ability框架:【@ohos.application.Want (Want)】

    Want模塊提供系統的基本通信組件的能力。
    的頭像 發表于 05-11 09:39 ?477次閱讀
    <b class='flag-5'>鴻蒙</b>開發接口<b class='flag-5'>Ability</b><b class='flag-5'>框架</b>:【@ohos.application.<b class='flag-5'>Want</b> (<b class='flag-5'>Want</b>)】

    鴻蒙應用模型:【Ability Kit】簡介

    Ability Kit程序框架服務)提供了應用程序開發和運行的應用模型,是系統為開發者提供的應
    的頭像 發表于 05-29 14:41 ?714次閱讀
    <b class='flag-5'>鴻蒙</b>應用模型:【<b class='flag-5'>Ability</b> <b class='flag-5'>Kit</b>】簡介

    鴻蒙Ability Kit程序框架服務)【UIAbility組件概述

    UIAbility組件是一種包含UI的應用組件,主要用于和用戶交互。
    的頭像 發表于 05-30 20:17 ?485次閱讀
    <b class='flag-5'>鴻蒙</b><b class='flag-5'>Ability</b> <b class='flag-5'>Kit</b>(<b class='flag-5'>程序</b><b class='flag-5'>框架</b><b class='flag-5'>服務</b>)【UIAbility組件<b class='flag-5'>概述</b>】

    鴻蒙Ability Kit程序框架服務)【Ability內頁面間的跳轉】

    基于Stage模型下的Ability開發,實現Ability內頁面間的跳轉和數據傳遞。
    的頭像 發表于 06-03 20:43 ?339次閱讀
    <b class='flag-5'>鴻蒙</b><b class='flag-5'>Ability</b> <b class='flag-5'>Kit</b>(<b class='flag-5'>程序</b><b class='flag-5'>框架</b><b class='flag-5'>服務</b>)【<b class='flag-5'>Ability</b>內頁面間的跳轉】

    鴻蒙Ability Kit程序框架服務)【Ability與ServiceExtensionAbility通信】

    本示例展示通過[IDL的方式]和?[@ohos.rpc]?等接口實現了Ability與ServiceExtensionAbility之間的通信。
    的頭像 發表于 06-05 09:28 ?536次閱讀
    <b class='flag-5'>鴻蒙</b><b class='flag-5'>Ability</b> <b class='flag-5'>Kit</b>(<b class='flag-5'>程序</b><b class='flag-5'>框架</b><b class='flag-5'>服務</b>)【<b class='flag-5'>Ability</b>與ServiceExtensionAbility通信】

    鴻蒙Ability Kit程序框架服務)【顯式Want與隱式Want匹配規則】

    在啟動目標應用組件時,會通過顯式[Want]或者隱式[Want]進行目標應用組件的匹配,這里說的匹配規則就是調用方傳入的[want]參數中設置的參數如何與目標應用組件聲明的配置文件進行匹配。
    的頭像 發表于 06-06 14:30 ?636次閱讀
    <b class='flag-5'>鴻蒙</b><b class='flag-5'>Ability</b> <b class='flag-5'>Kit</b>(<b class='flag-5'>程序</b><b class='flag-5'>框架</b><b class='flag-5'>服務</b>)【顯式<b class='flag-5'>Want</b>與隱式<b class='flag-5'>Want</b>匹配規則】

    鴻蒙Ability Kit程序框架服務)【應用間使用Want分享數據】

    在應用使用場景中,用戶經常需要將應用內的數據(如文字、圖片等)分享至其他應用以供進一步處理。Want支持實現應用間的數據分享。
    的頭像 發表于 06-07 15:19 ?413次閱讀
    <b class='flag-5'>鴻蒙</b><b class='flag-5'>Ability</b> <b class='flag-5'>Kit</b>(<b class='flag-5'>程序</b><b class='flag-5'>框架</b><b class='flag-5'>服務</b>)【應用間使用<b class='flag-5'>Want</b>分享數據】

    鴻蒙Ability Kit程序框架服務)【應用啟動框架AppStartup】

    `AppStartup`提供了一種更加簡單高效的初始化組件的方式,支持異步初始化組件加速應用的啟動時間。使用啟動框架應用開發者只需要分別為待初始化的組件實現`AppStartup`提供
    的頭像 發表于 06-10 18:38 ?790次閱讀

    鴻蒙開發Ability Kit程序框架服務:任務管理

    AbilityRecord:系統服務側管理一個UIAbility實例的最小單元,對應一個應用側的UIAbility組件實例。系統服務側管理UIAbility實例數量上限為512個。
    的頭像 發表于 06-24 14:46 ?516次閱讀
    <b class='flag-5'>鴻蒙</b>開發<b class='flag-5'>Ability</b> <b class='flag-5'>Kit</b><b class='flag-5'>程序</b><b class='flag-5'>框架</b><b class='flag-5'>服務</b>:任務管理
    关于百家乐官网切入点| 百家乐官网赌场论坛博客| 旅百家乐官网赢钱律| 百家乐稳赢投资法| 大理市| 金彩百家乐官网的玩法技巧和规则| 网络百家乐程序| 同江市| 百家乐辅助分析软件| 死海太阳城酒店| 百家乐官网香港六合彩| 百家乐国际娱乐场| 密山市| 百家乐游戏百家乐| 六合彩今晚开什么| 巴西百家乐官网的玩法技巧和规则| 太阳城小区| 老k百家乐官网游戏| 蓝盾百家乐的玩法技巧和规则| 百家乐官网庄闲下载| 澳门百家乐网上| 乐透世界娱乐城| 永利高百家乐信誉| 皇博娱乐| 粤港澳百家乐官网娱乐场| 百家乐和的打法| 玩百家乐官网平台| 金域百家乐的玩法技巧和规则| 百家乐官网美食坊| 小孟百家乐的玩法技巧和规则| 百家乐官网龙虎规则| 青鹏百家乐游戏币| 百家乐官网翻天qvod粤语| 试玩百家乐的玩法技巧和规则| 百家乐官网百乐发破解版| 百家乐真人游戏棋牌| 澳门百家乐官网在线| sz新全讯网xb112| 豪门百家乐官网的玩法技巧和规则 | 线上百家乐官网的玩法技巧和规则| 大发888国际娱乐net|