使用隱式Want打開網址
以打開瀏覽器為例,假設設備上安裝了一個或多個瀏覽器應用。為了使瀏覽器應用能夠正常工作,需要在[module.json5配置文件]進行配置,具體配置如下: 開發前請熟悉鴻蒙開發指導文檔 :[gitee.com/li-shizhen-skin/harmony-os/blob/master/README.md
]
{
"module": {
"abilities": [
{
// 入口配置
"skills": [
{
"actions": [
"action.system.home"
],
"entities": [
"entity.system.home"
]
},
// 瀏覽器配置
{
"actions": [
"ohos.want.action.viewData"
],
"entities": [
"entity.system.browsable"
],
"uris": [{
"scheme": "https",
"host": "www.test.com",
"port": "8080",
"pathStartWith": "query"
},
{
"scheme": "http"
}
]
}
]
}
]
}
}
在調用方UIAbility中,使用隱式Want方式啟動瀏覽器應用。
import common from '@ohos.app.ability.common';
import Want from '@ohos.app.ability.Want';
import { BusinessError } from '@ohos.base';
let context = getContext(this) as common.UIAbilityContext;
let wantInfo: Want = {
// uncomment line below if wish to implicitly query only in the specific bundle.
// bundleName: 'com.example.myapplication',
action: 'ohos.want.action.viewData',
// entities can be omitted.
entities: ['entity.system.browsable'],
uri: 'https://www.test.com:8080/query/student'
}
context.startAbility(wantInfo).then(() = > {
// ...
}).catch((err: BusinessError) = > {
// ...
})
匹配過程分析:
- 調用方傳入的want參數的action不為空,待匹配目標應用組件的skills配置中的actions不為空且包含調用方傳入的want參數的action,action匹配成功。
- 調用方傳入的want參數的entities不為空,待匹配目標應用組件的skills配置中的entities不為空且包含調用方傳入的want參數的entities,entities匹配成功。
- 待匹配目標應用組件的skills配置中內uris拼接為
https://www.test.com:8080/query*
(其中*表示通配符),包含調用方傳入的want參數的uri,uri匹配成功。
當存在多個匹配的應用時,系統將彈出應用選擇框供用戶選擇。示意效果如下圖所示。
審核編輯 黃宇
聲明:本文內容及配圖由入駐作者撰寫或者入駐合作網站授權轉載。文章觀點僅代表作者本人,不代表電子發燒友網立場。文章及其配圖僅供工程師學習之用,如有內容侵權或者其他違規問題,請聯系本站處理。
舉報投訴
-
框架
+關注
關注
0文章
403瀏覽量
17510 -
鴻蒙
+關注
關注
57文章
2369瀏覽量
42900
發布評論請先 登錄
相關推薦
鴻蒙Ability Kit(程序框架服務)【ServiceExtensionAbility】
[ServiceExtensionAbility]是SERVICE類型的ExtensionAbility組件,提供后臺服務能力,其內部持有了一個[ServiceExtensionContext],通過[ServiceExtensionContext]提供了豐富的接口供外部使用。
鴻蒙Ability開發-Stage模型下Ability的創建和使用
函數
HiLog日志系統可以讓應用按照指定類型、指定級別、指定格式字符串打印日志內容,幫助開發者了解應用/服務的運行狀態,更好地調試程序。 HiLog提供了debug、info、warn、error以及fatal
發表于 01-08 15:34
HarmonyOS NEXT應用元服務開發Intents Kit(意圖框架服務)綜述
一、綜述
Intents Kit(意圖框架服務)是HarmonyOS級的意圖標準體系 ,意圖連接了應用/元服務內的業務功能。
意圖框架能幫開
發表于 11-28 10:43
跟阿斌一起學鴻蒙(2): Ability vs App?
OS的定位這需要從鴻蒙OS的自我定位說起:鴻蒙OS是一個**分布式操作系統**。## “單機”操作系統在我們目前常用的操作系統中,不管是手機還是電腦,App(Application,應用程序
發表于 11-30 20:56
跟阿斌一起學鴻蒙(2): Ability vs App?
OS的定位這需要從鴻蒙OS的自我定位說起:鴻蒙OS是一個**分布式操作系統**。## “單機”操作系統在我們目前常用的操作系統中,不管是手機還是電腦,App(Application,應用程序
發表于 12-02 16:55
HarmonyOS/OpenHarmony應用開發-信息傳遞載體Want使用
)。在隱式Want中,您可定義該字段,配合uri或parameters來表示對數據要執行的操作。如打開,查看該uri數據。例如,當uri為一段網址
發表于 02-06 10:28
HarmonyOS/OpenHarmony應用開發-stage使用隱示Want打開網址
前提條件設備上安裝了一個或多個瀏覽器。1.創建stage項目2.新建一個Ability,名稱為LlqAbility3.新建一個page頁,并與新建的LlqAbility綁定4.瀏覽器應用中通過
發表于 02-08 10:39
鴻蒙Ability Kit(程序框架服務)【Ability與ServiceExtensionAbility通信】
本示例展示通過[IDL的方式]和?[@ohos.rpc]?等接口實現了Ability與ServiceExtensionAbility之間的通信。
鴻蒙Ability Kit(程序框架服務)【顯式Want與隱式Want匹配規則】
在啟動目標應用組件時,會通過顯式[Want]或者隱式[Want]進行目標應用組件的匹配,這里說的匹配規則就是調用方傳入的[
鴻蒙Ability Kit(程序框架服務)【應用間使用Want分享數據】
在應用使用場景中,用戶經常需要將應用內的數據(如文字、圖片等)分享至其他應用以供進一步處理。Want支持實現應用間的數據分享。
鴻蒙Ability Kit(程序框架服務)【應用啟動框架AppStartup】
`AppStartup`提供了一種更加簡單高效的初始化組件的方式,支持異步初始化組件加速應用的啟動時間。使用啟動框架應用開發者只需要分別為待初始化的組件實現`AppStartup`提供
評論