From 601aa59415edf79192af0f7ce0fa78708d8e068d Mon Sep 17 00:00:00 2001 From: xuzhihao Date: Wed, 16 Mar 2022 16:59:24 +0800 Subject: [PATCH] Fix issue of unmatched content between dts files and md files Signed-off-by: xuzhihao --- .../reference/apis/js-apis-commonEvent.md | 50 +- .../reference/apis/js-apis-notification.md | 1946 ++++++++--------- .../reference/apis/js-apis-wantAgent.md | 979 +++++++++ 3 files changed, 1898 insertions(+), 1077 deletions(-) create mode 100644 zh-cn/application-dev/reference/apis/js-apis-wantAgent.md diff --git a/zh-cn/application-dev/reference/apis/js-apis-commonEvent.md b/zh-cn/application-dev/reference/apis/js-apis-commonEvent.md index cab69b7c18..8ad8d1f219 100644 --- a/zh-cn/application-dev/reference/apis/js-apis-commonEvent.md +++ b/zh-cn/application-dev/reference/apis/js-apis-commonEvent.md @@ -8,6 +8,7 @@ | 系统公共事件宏 | 系统公共事件名称 | 订阅者所需权限 | | ------------ | ------------------ | ---------------------- | | COMMON_EVENT_BOOT_COMPLETED | usual.event.BOOT_COMPLETED | ohos.permission.RECEIVER_STARTUP_COMPLETED | +| COMMON_EVENT_LOCKED_BOOT_COMPLETED | usual.event.LOCKED_BOOT_COMPLETED | ohos.permission.RECEIVER_STARTUP_COMPLETED | | COMMON_EVENT_SHUTDOWN | usual.event.SHUTDOWN | 无 | | COMMON_EVENT_BATTERY_CHANGED | usual.event.BATTERY_CHANGED | 无 | | COMMON_EVENT_BATTERY_LOW | usual.event.BATTERY_LOW | 无 | @@ -16,6 +17,7 @@ | COMMON_EVENT_POWER_DISCONNECTED | usual.event.POWER_DISCONNECTED | 无 | | COMMON_EVENT_SCREEN_OFF | usual.event.SCREEN_OFF | 无 | | COMMON_EVENT_SCREEN_ON | usual.event.SCREEN_ON | 无 | +| COMMON_EVENT_THERMAL_LEVEL_CHANGED | usual.event.THERMAL_LEVEL_CHANGED | 无 | | COMMON_EVENT_USER_PRESENT | usual.event.USER_PRESENT | 无 | | COMMON_EVENT_TIME_TICK | usual.event.TIME_TICK | 无 | | COMMON_EVENT_TIME_CHANGED | usual.event.TIME_CHANGED | 无 | @@ -50,7 +52,9 @@ | COMMON_EVENT_USER_BACKGROUND | usual.event.USER_BACKGROUND | 无 | | COMMON_EVENT_USER_FOREGROUND | usual.event.USER_FOREGROUND | 无 | | COMMON_EVENT_USER_SWITCHED | usual.event.USER_SWITCHED | ohos.permission.MANAGE_USERS | +| COMMON_EVENT_USER_STARTING | usual.event.USER_STARTING | ohos.permission.INTERACT_ACROSS_USERS | | COMMON_EVENT_USER_UNLOCKED | usual.event.USER_UNLOCKED | 无 | +| COMMON_EVENT_USER_STOPPING | usual.event.USER_STOPPING | ohos.permission.INTERACT_ACROSS_USERS | | COMMON_EVENT_USER_STOPPED | usual.event.USER_STOPPED | 无 | | COMMON_EVENT_HWID_LOGIN | common.event.HWID_LOGIN | 无 | | COMMON_EVENT_HWID_LOGOUT | common.event.HWID_LOGOUT | 无 | @@ -63,14 +67,31 @@ | COMMON_EVENT_WIFI_HOTSPOT_STATE | usual.event.wifi.HOTSPOT_STATE | 无 | | COMMON_EVENT_WIFI_AP_STA_JOIN | usual.event.wifi.WIFI_HS_STA_JOIN | ohos.permission.GET_WIFI_INFO | | COMMON_EVENT_WIFI_AP_STA_LEAVE | usual.event.wifi.WIFI_HS_STA_LEAVE | ohos.permission.GET_WIFI_INFO | +| COMMON_EVENT_WIFI_MPLINK_STATE_CHANGE | usual.event.wifi.mplink.STATE_CHANGE | ohos.permission.MPLINK_CHANGE_STATE | | COMMON_EVENT_WIFI_P2P_CONN_STATE | usual.event.wifi.p2p.CONN_STATE_CHANGE | ohos.permission.GET_WIFI_INFO and ohos.permission.LOCATION | | COMMON_EVENT_WIFI_P2P_STATE_CHANGED | usual.event.wifi.p2p.STATE_CHANGE | ohos.permission.GET_WIFI_INFO | | COMMON_EVENT_WIFI_P2P_PEERS_STATE_CHANGED | usual.event.wifi.p2p.DEVICES_CHANGE | ohos.permission.GET_WIFI_INFO | | COMMON_EVENT_WIFI_P2P_PEERS_DISCOVERY_STATE_CHANGED | usual.event.wifi.p2p.PEER_DISCOVERY_STATE_CHANGE | ohos.permission.GET_WIFI_INFO | | COMMON_EVENT_WIFI_P2P_CURRENT_DEVICE_STATE_CHANGED | usual.event.wifi.p2p.CURRENT_DEVICE_CHANGE | ohos.permission.GET_WIFI_INFO | | COMMON_EVENT_WIFI_P2P_GROUP_STATE_CHANGED | usual.event.wifi.p2p.GROUP_STATE_CHANGED | ohos.permission.GET_WIFI_INFO | +| COMMON_EVENT_BLUETOOTH_HANDSFREE_AG_CONNECT_STATE_UPDATE | usual.event.bluetooth.handsfree.ag.CONNECT_STATE_UPDATE | ohos.permission.USE_BLUETOOTH | +| COMMON_EVENT_BLUETOOTH_HANDSFREE_AG_CURRENT_DEVICE_UPDATE | usual.event.bluetooth.handsfree.ag.CURRENT_DEVICE_UPDATE | ohos.permission.USE_BLUETOOTH | +| COMMON_EVENT_BLUETOOTH_HANDSFREE_AG_AUDIO_STATE_UPDATE | usual.event.bluetooth.handsfree.ag.AUDIO_STATE_UPDATE | ohos.permission.USE_BLUETOOTH | +| COMMON_EVENT_BLUETOOTH_A2DPSOURCE_CONNECT_STATE_UPDATE | usual.event.bluetooth.a2dpsource.CONNECT_STATE_UPDATE | ohos.permission.USE_BLUETOOTH | +| COMMON_EVENT_BLUETOOTH_A2DPSOURCE_CURRENT_DEVICE_UPDATE | usual.event.bluetooth.a2dpsource.CURRENT_DEVICE_UPDATE | ohos.permission.USE_BLUETOOTH | +| COMMON_EVENT_BLUETOOTH_A2DPSOURCE_PLAYING_STATE_UPDATE | usual.event.bluetooth.a2dpsource.PLAYING_STATE_UPDATE | ohos.permission.USE_BLUETOOTH | | COMMON_EVENT_BLUETOOTH_A2DPSOURCE_AVRCP_CONNECT_STATE_UPDATE | usual.event.bluetooth.a2dpsource.AVRCP_CONNECT_STATE_UPDATE | ohos.permission.USE_BLUETOOTH | +| COMMON_EVENT_BLUETOOTH_A2DPSOURCE_CODEC_VALUE_UPDATE | usual.event.bluetooth.a2dpsource.CODEC_VALUE_UPDATE | ohos.permission.USE_BLUETOOTH | +| COMMON_EVENT_BLUETOOTH_REMOTEDEVICE_DISCOVERED | usual.event.bluetooth.remotedevice.DISCOVERED | ohos.permission.LOCATION | +| COMMON_EVENT_BLUETOOTH_REMOTEDEVICE_CLASS_VALUE_UPDATE | usual.event.bluetooth.remotedevice.CLASS_VALUE_UPDATE | ohos.permission.USE_BLUETOOTH | +| COMMON_EVENT_BLUETOOTH_REMOTEDEVICE_ACL_CONNECTED | usual.event.bluetooth.remotedevice.ACL_CONNECTED | ohos.permission.USE_BLUETOOTH | +| COMMON_EVENT_BLUETOOTH_REMOTEDEVICE_ACL_DISCONNECTED | usual.event.bluetooth.remotedevice.ACL_DISCONNECTED | ohos.permission.USE_BLUETOOTH | +| COMMON_EVENT_BLUETOOTH_REMOTEDEVICE_NAME_UPDATE | usual.event.bluetooth.remotedevice.NAME_UPDATE | ohos.permission.USE_BLUETOOTH | +| COMMON_EVENT_BLUETOOTH_REMOTEDEVICE_PAIR_STATE | usual.event.bluetooth.remotedevice.PAIR_STATE | ohos.permission.USE_BLUETOOTH | +| COMMON_EVENT_BLUETOOTH_REMOTEDEVICE_BATTERY_VALUE_UPDATE | usual.event.bluetooth.remotedevice.BATTERY_VALUE_UPDATE | ohos.permission.USE_BLUETOOTH | | COMMON_EVENT_BLUETOOTH_REMOTEDEVICE_SDP_RESULT | usual.event.bluetooth.remotedevice.SDP_RESULT | 无 | +| COMMON_EVENT_BLUETOOTH_REMOTEDEVICE_UUID_VALUE | usual.event.bluetooth.remotedevice.UUID_VALUE | ohos.permission.DISCOVER_BLUETOOTH | +| COMMON_EVENT_BLUETOOTH_REMOTEDEVICE_PAIRING_REQ | usual.event.bluetooth.remotedevice.PAIRING_REQ | ohos.permission.DISCOVER_BLUETOOTH | | COMMON_EVENT_BLUETOOTH_REMOTEDEVICE_PAIRING_CANCEL | usual.event.bluetooth.remotedevice.PAIRING_CANCEL | 无 | | COMMON_EVENT_BLUETOOTH_REMOTEDEVICE_CONNECT_REQ | usual.event.bluetooth.remotedevice.CONNECT_REQ | 无 | | COMMON_EVENT_BLUETOOTH_REMOTEDEVICE_CONNECT_REPLY | usual.event.bluetooth.remotedevice.CONNECT_REPLY | 无 | @@ -79,14 +100,29 @@ | COMMON_EVENT_BLUETOOTH_HANDSFREEUNIT_AUDIO_STATE_UPDATE | usual.event.bluetooth.handsfreeunit.AUDIO_STATE_UPDATE | 无 | | COMMON_EVENT_BLUETOOTH_HANDSFREEUNIT_AG_COMMON_EVENT | usual.event.bluetooth.handsfreeunit.AG_COMMON_EVENT | 无 | | COMMON_EVENT_BLUETOOTH_HANDSFREEUNIT_AG_CALL_STATE_UPDATE | usual.event.bluetooth.handsfreeunit.AG_CALL_STATE_UPDATE | 无 | +| COMMON_EVENT_BLUETOOTH_HOST_STATE_UPDATE | usual.event.bluetooth.host.STATE_UPDATE | ohos.permission.USE_BLUETOOTH | | COMMON_EVENT_BLUETOOTH_HOST_REQ_DISCOVERABLE | usual.event.bluetooth.host.REQ_DISCOVERABLE | 无 | +| COMMON_EVENT_BLUETOOTH_HOST_REQ_ENABLE | usual.event.bluetooth.host.REQ_ENABLE | ohos.permission.USE_BLUETOOTH | +| COMMON_EVENT_BLUETOOTH_HOST_REQ_DISABLE | usual.event.bluetooth.host.REQ_DISABLE | ohos.permission.USE_BLUETOOTH | +| COMMON_EVENT_BLUETOOTH_HOST_SCAN_MODE_UPDATE | usual.event.bluetooth.host.SCAN_MODE_UPDATE | ohos.permission.USE_BLUETOOTH | +| COMMON_EVENT_BLUETOOTH_HOST_DISCOVERY_STARTED | usual.event.bluetooth.host.DISCOVERY_STARTED | ohos.permission.USE_BLUETOOTH | +| COMMON_EVENT_BLUETOOTH_HOST_DISCOVERY_FINISHED | usual.event.bluetooth.host.DISCOVERY_FINISHED | ohos.permission.USE_BLUETOOTH | +| COMMON_EVENT_BLUETOOTH_HOST_NAME_UPDATE | usual.event.bluetooth.host.NAME_UPDATE | ohos.permission.USE_BLUETOOTH | +| COMMON_EVENT_BLUETOOTH_A2DPSINK_CONNECT_STATE_UPDATE | usual.event.bluetooth.a2dpsink.CONNECT_STATE_UPDATE | ohos.permission.USE_BLUETOOTH | +| COMMON_EVENT_BLUETOOTH_A2DPSINK_PLAYING_STATE_UPDATE | usual.event.bluetooth.a2dpsink.PLAYING_STATE_UPDATE | ohos.permission.USE_BLUETOOTH | +| COMMON_EVENT_BLUETOOTH_A2DPSINK_AUDIO_STATE_UPDATE | usual.event.bluetooth.a2dpsink.AUDIO_STATE_UPDATE | ohos.permission.USE_BLUETOOTH | | COMMON_EVENT_NFC_ACTION_ADAPTER_STATE_CHANGED | usual.event.nfc.action.ADAPTER_STATE_CHANGED | 无 | +| COMMON_EVENT_NFC_ACTION_RF_FIELD_ON_DETECTED | usual.event.nfc.action.RF_FIELD_ON_DETECTED | ohos.permission.MANAGE_SECURE_SETTINGS | +| COMMON_EVENT_NFC_ACTION_RF_FIELD_OFF_DETECTED | usual.event.nfc.action.RF_FIELD_OFF_DETECTED | ohos.permission.MANAGE_SECURE_SETTINGS | | COMMON_EVENT_DISCHARGING | usual.event.DISCHARGING | 无 | | COMMON_EVENT_CHARGING | usual.event.CHARGING | 无 | | COMMON_EVENT_DEVICE_IDLE_MODE_CHANGED | usual.event.DEVICE_IDLE_MODE_CHANGED | 无 | | COMMON_EVENT_POWER_SAVE_MODE_CHANGED | usual.event.POWER_SAVE_MODE_CHANGED | 无 | | COMMON_EVENT_USER_ADDED | usual.event.USER_ADDED | ohos.permission.MANAGE_USERS | | COMMON_EVENT_USER_REMOVED | usual.event.USER_REMOVED | ohos.permission.MANAGE_USERS | +| COMMON_EVENT_ABILITY_ADDED | usual.event.ABILITY_ADDED | ohos.permission.LISTEN_BUNDLE_CHANGE | +| COMMON_EVENT_ABILITY_REMOVED | usual.event.ABILITY_REMOVED | ohos.permission.LISTEN_BUNDLE_CHANGE | +| COMMON_EVENT_ABILITY_UPDATED | usual.event.ABILITY_UPDATED | ohos.permission.LISTEN_BUNDLE_CHANGE | | COMMON_EVENT_LOCATION_MODE_STATE_CHANGED | usual.event.location.MODE_STATE_CHANGED | 无 | | COMMON_EVENT_IVI_SLEEP | common.event.IVI_SLEEP | 无 | | COMMON_EVENT_IVI_PAUSE | common.event.IVI_PAUSE | 无 | @@ -107,8 +143,18 @@ | COMMON_EVENT_DISK_UNMOUNTED | usual.event.data.DISK_UNMOUNTED | ohos.permission.WRITE_USER_STORAGE 或 ohos.permission.READ_USER_STORAGE | | COMMON_EVENT_DISK_MOUNTED | usual.event.data.DISK_MOUNTED | ohos.permission.WRITE_USER_STORAGE 或 ohos.permission.READ_USER_STORAGE | | COMMON_EVENT_DISK_BAD_REMOVAL | usual.event.data.DISK_BAD_REMOVAL | ohos.permission.WRITE_USER_STORAGE 或 ohos.permission.READ_USER_STORAGE | +| COMMON_EVENT_DISK_UNMOUNTABLE | usual.event.data.DISK_UNMOUNTABLE | ohos.permission.WRITE_USER_STORAGE 或 ohos.permission.READ_USER_STORAGE | | COMMON_EVENT_DISK_EJECT | usual.event.data.DISK_EJECT | ohos.permission.WRITE_USER_STORAGE 或 ohos.permission.READ_USER_STORAGE | +| COMMON_EVENT_VOLUME_REMOVED | usual.event.data.VOLUME_REMOVED | ohos.permission.WRITE_USER_STORAGE 或 ohos.permission.READ_USER_STORAGE | +| COMMON_EVENT_VOLUME_UNMOUNTED | usual.event.data.VOLUME_UNMOUNTED | ohos.permission.WRITE_USER_STORAGE 或 ohos.permission.READ_USER_STORAGE | +| COMMON_EVENT_VOLUME_MOUNTED | usual.event.data.VOLUME_MOUNTED | ohos.permission.WRITE_USER_STORAGE 或 ohos.permission.READ_USER_STORAGE | +| COMMON_EVENT_VOLUME_BAD_REMOVAL | usual.event.data.VOLUME_BAD_REMOVAL | ohos.permission.WRITE_USER_STORAGE 或 ohos.permission.READ_USER_STORAGE | +| COMMON_EVENT_VOLUME_EJECT | usual.event.data.VOLUME_EJECT | ohos.permission.WRITE_USER_STORAGE 或 ohos.permission.READ_USER_STORAGE | +| COMMON_EVENT_VISIBLE_ACCOUNTS_UPDATED | usual.event.data.VISIBLE_ACCOUNTS_UPDATED | ohos.permission.GET_APP_ACCOUNTS | +| COMMON_EVENT_ACCOUNT_DELETED | usual.event.data.ACCOUNT_DELETED | ohos.permission.INTERACT_ACROSS_LOCAL_ACCOUNTS | +| COMMON_EVENT_FOUNDATION_READY | usual.event.data.FOUNDATION_READY | ohos.permission.RECEIVER_STARTUP_COMPLETED | | COMMON_EVENT_AIRPLANE_MODE_CHANGED | usual.event.AIRPLANE_MODE | 无 | +| COMMON_EVENT_SPLIT_SCREEN | usual.event.SPLIT_SCREEN | ohos.permission.RECEIVER_SPLIT_SCREEN | ## 导入模块 @@ -191,7 +237,7 @@ CommonEvent.publish("event", options, PublishCallBack); -## CommonEvent.publishAsUser +## CommonEvent.publishAsUser8+ publishAsUser(event: string, userId: number, callback: AsyncCallback\): void @@ -228,7 +274,7 @@ CommonEvent.publishAsUser("event", userId, PublishAsUserCallBack); -## CommonEvent.publishAsUser +## CommonEvent.publishAsUser8+ publishAsUser(event: string, userId: number, options: CommonEventPublishData, callback: AsyncCallback\): void diff --git a/zh-cn/application-dev/reference/apis/js-apis-notification.md b/zh-cn/application-dev/reference/apis/js-apis-notification.md index eb5b201172..2d61c59625 100644 --- a/zh-cn/application-dev/reference/apis/js-apis-notification.md +++ b/zh-cn/application-dev/reference/apis/js-apis-notification.md @@ -1,5 +1,9 @@ # Notification模块 +>**说明:** +> +>本模块首批接口从API version 7开始支持。后续版本的新增接口,采用上角标单独标记接口的起始版本。 + ## 导入模块 ```js @@ -74,6 +78,82 @@ Notification.publish(notificationRequest).then(() => { ``` +## Notification.publish8+ + +publish(request: NotificationRequest, userId: number, callback: AsyncCallback): void + +发布通知(callback形式)。 + +**系统能力**:SystemCapability.Notification.Notification + +**参数:** + +| 名称 | 可读 | 可写 | 类型 | 必填 | 描述 | +| -------- | ---- | ---- | ----------------------------------------- | ---- | ------------------------------------------- | +| request | 是 | 否 |[NotificationRequest](#notificationrequest) | 是 | 设置要发布通知内容的NotificationRequest对象。 | +| userId | 是 | 否 |number | 是 | 接收通知用户的Id。 | +| callback | 是 | 否 |AsyncCallback\ | 是 | 被指定的回调方法。 | + +**示例:** + +```js +//publish回调 +function publishCallback(err) { + console.info("==========================>publishCallback=======================>"); +} +// 接收通知的用户ID +var userId = 1 +//通知Request对象 +var notificationRequest = { + id: 1, + content: { + contentType: Notification.ContentType.NOTIFICATION_CONTENT_BASIC_TEXT, + normal: { + title: "test_title", + text: "test_text", + additionalText: "test_additionalText" + } + } +} +Notification.publish(notificationRequest, userId, publishCallback); +``` + +## Notification.publish8+ + +publish(request: NotificationRequest, userId: number): Promise + +发布通知(Promise形式)。 + +**系统能力**:SystemCapability.Notification.Notification + +**参数:** + +| 名称 | 可读 | 可写 | 类型 | 必填 | 描述 | +| -------- | ---- | ---- | ----------------------------------------- | ---- | ------------------------------------------- | +| request | 是 | 否 |[NotificationRequest](#notificationrequest) | 是 | 设置要发布通知内容的NotificationRequest对象。 | +| userId | 是 | 否 |number | 是 | 接收通知用户的Id。 | + +**示例:** + +```js +var notificationRequest = { + notificationId: 1, + content: { + contentType: Notification.ContentType.NOTIFICATION_CONTENT_BASIC_TEXT, + normal: { + title: "test_title", + text: "test_text", + additionalText: "test_additionalText" + } + } +} + +var userId = 1 + +Notification.publish(notificationRequest, userId).then(() => { + console.info("==========================>publishCallback=======================>"); +}); +``` ## Notification.cancel @@ -464,7 +544,7 @@ Notification.getSlots(getSlotsCallback) ## Notification.getSlots -getSlots() +getSlots(): Promise> 获取此应用程序的所有通知通道(Promise形式)。 @@ -1422,6 +1502,58 @@ Notification.removeAll().then(() => { }); ``` +## Notification.removeAll8+ + +removeAll(userId: number, callback: AsyncCallback): void + +删除所有通知(callback形式)。 + +**系统能力**:SystemCapability.Notification.Notification + +**参数:** + +| 名称 | 可读 | 可写 | 类型 | 必填 | 描述 | +| ------ | ---- | --- | ------------ | ---- | ---------- | +| userId | 是 | 否 | number | 是 | 接收通知用户的Id。 | +| callback | 是 | 否 | AsyncCallback\ | 是 | 删除所有通知回调函数。 | + +**示例:** + +```js +function removeAllCallback(err) { + console.info("==========================>removeAllCallback=======================>"); +} + +var userId = 1 + +Notification.removeAll(userId, removeAllCallback); +``` + +## Notification.removeAll8+ + +removeAll(userId: number): Promise + +删除所有通知(Promise形式)。 + +**系统能力**:SystemCapability.Notification.Notification + +**参数:** + +| 名称 | 可读 | 可写 | 类型 | 必填 | 描述 | +| ------ | ---- | --- | ------------ | ---- | ---------- | +| userId | 是 | 否 | number | 是 | 接收通知用户的Id。 | + +**示例:** + +```js +function removeAllCallback(err) { + console.info("==========================>removeAllCallback=======================>"); +} + +var userId = 1 + +Notification.removeAll(userId, removeAllCallback); +``` ## Notification.getAllActiveNotifications @@ -1574,7 +1706,7 @@ Notification.getActiveNotifications().then((data) => { -## Notification.cancelGroup +## Notification.cancelGroup8+ cancelGroup(groupName: string, callback: AsyncCallback\): void @@ -1603,7 +1735,7 @@ Notification.cancelGroup(groupName, cancelGroupCallback); -## Notification.cancelGroup +## Notification.cancelGroup8+ cancelGroup(groupName: string): Promise\ @@ -1628,7 +1760,7 @@ Notification.cancelGroup(groupName).then(() => { -## Notification.removeGroupByBundle +## Notification.removeGroupByBundle8+ removeGroupByBundle(bundle: BundleOption, groupName: string, callback: AsyncCallback\): void @@ -1659,7 +1791,7 @@ Notification.removeGroupByBundle(bundleOption, groupName, removeGroupByBundleCal -## Notification.removeGroupByBundle +## Notification.removeGroupByBundle8+ removeGroupByBundle(bundle: BundleOption, groupName: string): Promise\ @@ -1686,7 +1818,7 @@ Notification.removeGroupByBundle(bundleOption, groupName).then(() => { -## Notification.setDoNotDisturbDate +## Notification.setDoNotDisturbDate8+ setDoNotDisturbDate(date: DoNotDisturbDate, callback: AsyncCallback\): void @@ -1719,7 +1851,7 @@ Notification.setDoNotDisturbDate(doNotDisturbDate, setDoNotDisturbDateCallback); -## Notification.setDoNotDisturbDate +## Notification.setDoNotDisturbDate8+ setDoNotDisturbDate(date: DoNotDisturbDate): Promise\ @@ -1747,8 +1879,75 @@ Notification.setDoNotDisturbDate(doNotDisturbDate).then(() => { ``` +## Notification.setDoNotDisturbDate8+ + +setDoNotDisturbDate(date: DoNotDisturbDate, userId: number, callback: AsyncCallback\): void + +指定用户设置免打扰时间(Callback形式)。 + +**系统能力**:SystemCapability.Notification.Notification + +**参数:** + +| 名称 | 可读 | 可写 | 类型 | 必填 | 描述 | +| -------- | ---- | --- | --------------------- | ---- | ---------------------- | +| date | 是 | 否 | DoNotDisturbDate | 是 | 免打扰时间选项。 | +| userId | 是 | 否 | number | 是 | 设置免打扰事件的用户ID。 | +| callback | 是 | 否 | AsyncCallback\ | 是 | 设置免打扰时间回调函数。 | + +**示例:** + +```js +function setDoNotDisturbDateCallback(err) { + console.info("==========================>setDoNotDisturbDateCallback=======================>"); +} + +var doNotDisturbDate = { + type: Notification.DoNotDisturbType.TYPE_ONCE, + begin: new Date(), + end: new Date(2021, 11, 15, 18, 0) +} + +var userId = 1 + +Notification.setDoNotDisturbDate(doNotDisturbDate, userId, setDoNotDisturbDateCallback); +``` + + + +## Notification.setDoNotDisturbDate8+ + +setDoNotDisturbDate(date: DoNotDisturbDate, userId: number): Promise\ + +指定用户设置免打扰时间接口(Promise形式)。 + +**系统能力**:SystemCapability.Notification.Notification + +**参数:** + +| 名称 | 可读 | 可写 | 类型 | 必填 | 描述 | +| ------ | ---- | --- | ---------------- | ---- | -------------- | +| date | 是 | 否 | DoNotDisturbDate | 是 | 免打扰时间选项。 | +| userId | 是 | 否 | number | 是 | 设置免打扰事件的用户ID。 | + +**示例:** + +```js +var doNotDisturbDate = { + type: Notification.DoNotDisturbType.TYPE_ONCE, + begin: new Date(), + end: new Date(2021, 11, 15, 18, 0) +} + +var userId = 1 + +Notification.setDoNotDisturbDate(doNotDisturbDate, userId).then(() => { + console.info("==========================>setDoNotDisturbDatePromise=======================>"); +}); +``` + -## Notification.getDoNotDisturbDate +## Notification.getDoNotDisturbDate8+ getDoNotDisturbDate(callback: AsyncCallback\): void @@ -1774,7 +1973,7 @@ Notification.getDoNotDisturbDate(getDoNotDisturbDateCallback); -## Notification.getDoNotDisturbDate +## Notification.getDoNotDisturbDate8+ getDoNotDisturbDate(): Promise\ @@ -1797,8 +1996,67 @@ Notification.getDoNotDisturbDate().then((data) => { ``` +## Notification.getDoNotDisturbDate8+ + +getDoNotDisturbDate(userId: number, callback: AsyncCallback\): void + +指定用户查询免打扰时间接口(Callback形式)。 + +**系统能力**:SystemCapability.Notification.Notification + +**参数:** + +| 名称 | 可读 | 可写 | 类型 | 必填 | 描述 | +| -------- | ---- | --- | --------------------------------- | ---- | ---------------------- | +| callback | 是 | 否 | AsyncCallback\ | 是 | 查询免打扰时间回调函数。 | +| userId | 是 | 否 | number | 是 | 设置免打扰事件的用户ID。 | + +**示例:** + +```js +function getDoNotDisturbDateCallback(err,data) { + console.info("==========================>getDoNotDisturbDateCallback=======================>"); +} + +var userId = 1 + +Notification.getDoNotDisturbDate(userId, getDoNotDisturbDateCallback); +``` + + + +## Notification.getDoNotDisturbDate8+ + +getDoNotDisturbDate(userId: number): Promise\ + +指定用户查询免打扰时间接口(Promise形式)。 + +**系统能力**:SystemCapability.Notification.Notification + +**参数:** + +| 名称 | 可读 | 可写 | 类型 | 必填 | 描述 | +| -------- | ---- | --- | --------------------------------- | ---- | ---------------------- | +| userId | 是 | 否 | number | 是 | 设置免打扰事件的用户ID。 | + +**返回值:** + +| 类型 | 说明 | +| ----------------------------------------------------------- | ------------------------------------------------------------ | +| Promise\ | 以Promise形式返回获取查询免打扰时间接口。 | + +**示例:** + +```js +var userId = 1 + +Notification.getDoNotDisturbDate(userId).then((data) => { + console.info("==========================>getDoNotDisturbDatePromise=======================>"); +}); +``` + -## Notification.supportDoNotDisturbMode +## Notification.supportDoNotDisturbMode8+ supportDoNotDisturbMode(callback: AsyncCallback\): void @@ -1824,7 +2082,7 @@ Notification.supportDoNotDisturbMode(supportDoNotDisturbModeCallback); -## Notification.supportDoNotDisturbMode +## Notification.supportDoNotDisturbMode8+ supportDoNotDisturbMode(): Promise\ @@ -1848,7 +2106,7 @@ Notification.supportDoNotDisturbMode().then((data) => { -## Notification.isSupportTemplate +## Notification.isSupportTemplate8+ isSupportTemplate(templateName: string, callback: AsyncCallback\): void @@ -1876,7 +2134,7 @@ Notification.isSupportTemplate(templateName, isSupportTemplateCallback); -## Notification.isSupportTemplate +## Notification.isSupportTemplate8+ isSupportTemplate(templateName: string): Promise\ @@ -1908,9 +2166,9 @@ Notification.isSupportTemplate(templateName).then((data) => { -## Notification.requestEnabledNotification +## Notification.requestEnableNotification8+ -requestEnabledNotification(callback: AsyncCallback\): void +requestEnabledNotification(callback: AsyncCallback\): void 应用请求通知使能。 @@ -1920,17 +2178,13 @@ requestEnabledNotification(callback: AsyncCallback\): void | 参数名 | 类型 | 必填 | 说明 | | -------- | ------------------------ | ---- | -------------------------- | -| callback | AsyncCallback\ | 是 | 查询模板是否存在的回调函数。 | +| callback | AsyncCallback\ | 是 | 应用请求通知使能的回调函数。 | **示例:** ```javascript -function requestEnabledNotificationCallback(err) { - if (err.code) { - console.info("isNotificationEnabledSelf failed " + JSON.stringify(err)); - } else { - console.info("isNotificationEnabledSelf"); - } +function requestEnabledNotificationCallback() { + console.log('------------- requestEnabledNotification --------------'); }; Notification.requestEnabledNotification(requestEnabledNotificationCallback); @@ -1938,1404 +2192,946 @@ Notification.requestEnabledNotification(requestEnabledNotificationCallback); -## Notification.requestEnabledNotification +## Notification.requestEnableNotification8+ -requestEnabledNotification(callback: AsyncCallback\): void +requestEnabledNotification(): Promise 应用请求通知使能。 **系统能力**:SystemCapability.Notification.Notification -**返回值:** - -| 类型 | 说明 | -| ------------------ | --------------- | -| Promise\ | Promise方式返回应用请求通知使能。 | - **示例:** ```javascript -Notification.isNotificationEnabledSelf() +Notification.requestEnableNotification() .then(() => { - console.info("requestEnabledNotification "); - }) - .catch((err) => { - console.info("requestEnabledNotification failed " + JSON.stringify(err)); + console.info("requestEnableNotification "); }); ``` -## Notification.show +## Notification.enableDistributed8+ -show(options?: ShowNotificationOptions): void +enableDistributed(enable: boolean, callback: AsyncCallback\): void -展示通知事件。 +设置设备是否支持分布式通知。 **系统能力**:SystemCapability.Notification.Notification **参数:** -| 参数名 | 类型 | 必填 | 说明 | -| ------- | ------------------------ | ---- | ---------------- | -| options | ShowNotificationOptions | 否 | 需要展示通知的参数 | +| 参数名 | 类型 | 必填 | 说明 | +| -------- | ------------------------ | ---- | -------------------------- | +| enable | boolean | 是 | 是否支持。
true 支持。
false 不支持。| +| callback | AsyncCallback\ | 是 | 设置设备是否支持分布式通知的回调函数。 | **示例:** ```javascript -var options = { - contentTitle: 'contentTitle', - contentText: 'contentText', - clickAction: { - bundleName: 'bundleName', - abilityName: 'abilityName', - uri: 'uri', - } +function enabledNotificationCallback() { + console.log('----------- enableDistributed ------------'); }; -Notification.show(options); +var enable = true + +Notification.enableDistributed(enable, enabledNotificationCallback); ``` -## NotificationSubscriber +## Notification.enableDistributed8+ -**系统能力:**以下各项对应的系统能力均为SystemCapability.Notification.Notification +enableDistributed(enable: boolean): Promise -| 名称 | 可读 | 可写 | 类型 | 必填 | 描述 | -| ------------------------------------------------------------ | ---- | --- | -------- | ---- | -------------------------- | -| onConsume?:(data: [SubscribeCallbackData](#subscribecallbackdata)) | 是 | 否 | function | 否 | 接收通知回调函数。 | -| onCancel?:(data: [SubscribeCallbackData](#subscribecallbackdata)) | 是 | 否 | function | 否 | 删除通知回调函数。 | -| onUpdate?:(data: [NotificationSortingMap](#notificationsortingmap)) | 是 | 否 | function | 否 | 更新通知排序回调函数。 | -| onConnect?:() | 是 | 否 | function | 否 | 注册订阅回调函数。 | -| onDisconnect?:() | 是 | 否 | function | 否 | 取消订阅回调函数。 | -| onDestroy?:() | 是 | 否 | function | 否 | 服务失联回调函数。 | -| onDoNotDisturbDateChange?:(mode: Notification.[DoNotDisturbDate](#donotdisturbdate)) | 是 | 否 | function | 否 | 免打扰时间选项变更回调函数。 | +设置设备是否支持分布式通知。 -### onEnabledNotificationChanged +**系统能力**:SystemCapability.Notification.Notification -onEnabledNotificationChanged?:(callbackData: [EnabledNotificationCallbackData](#enablednotificationcallbackdata)) +**参数:** -监听应用通知使能变化。 +| 参数名 | 类型 | 必填 | 说明 | +| -------- | ------------------------ | ---- | -------------------------- | +| enable | boolean | 是 | 是否支持。
true 支持。
false 不支持。| + +**示例:** + +```javascript +var enable = true + +Notification.enableDistributed(enable) + .then(() => { + console.log('-------- enableDistributed ----------'); + }); +``` + + +## Notification.isDistributedEnabled8+ + +isDistributedEnabled(callback: AsyncCallback): void + +获取设备是否支持分布式通知。 **系统能力**:SystemCapability.Notification.Notification **参数:** -| 参数名 | 类型 | 必填 | 说明 | -| ------------ | ------------------------ | ---- | -------------------------- | -| callback | AsyncCallback\<[EnabledNotificationCallbackData](#enablednotificationcallbackdata)\> | 是 | 回调返回监听到的应用信息。 | +| 参数名 | 类型 | 必填 | 说明 | +| -------- | ------------------------ | ---- | -------------------------- | +| callback | AsyncCallback\ | 是 | 设备是否支持分布式通知的回调函数。 | **示例:** ```javascript -function subscribeCallback(err) { - if (err.code) { - console.info("subscribe failed " + JSON.stringify(err)); - } else { - console.info("subscribeCallback"); - } -}; - -function onEnabledNotificationChangedCallback(err, callbackData) { - if (err.code) { - console.info("subscribe failed " + JSON.stringify(err)); - } else { - console.info("bundle: ", callbackData.bundle); - console.info("uid: ", callbackData.uid); - console.info("enable: ", callbackData.enable); - } +function isDistributedEnabledCallback() { + console.log('----------- isDistributedEnabled ------------'); }; -var subscriber = { - onEnabledNotificationChanged: onEnabledNotificationChangedCallback -}; - -Notification.subscribe(subscriber, subscribeCallback); +Notification.enableDistributed(isDistributedEnabledCallback); ``` -## SubscribeCallbackData - -**系统能力:**以下各项对应的系统能力均为SystemCapability.Notification.Notification +## Notification.isDistributedEnabled8+ -| 名称 | 可读 | 可写 | 类型 | 必填 | 描述 | -| --------------- | ---- | --- | ------------------------------------------------- | ---- | -------- | -| request | 是 | 否 | [NotificationRequest](#notificationrequest) | 是 | 通知内容。 | -| sortingMap | 是 | 否 | [NotificationSortingMap](#notificationsortingmap) | 否 | 排序信息。 | -| reason | 是 | 否 | number | 否 | 删除原因。 | -| sound | 是 | 否 | string | 否 | 通知声音。 | -| vibrationValues | 是 | 否 | Array\ | 否 | 通知震动。 | - -## NotificationSortingMap +isDistributedEnabled(): Promise -**系统能力:**以下各项对应的系统能力均为SystemCapability.Notification.Notification - -| 名称 | 可读 | 可写 | 类型 | 必填 | 描述 | -| -------------- | ---- | --- | ------------------------------------------------------------ | ---- | ---------------- | -| sortings | 是 | 否 | {[key: string]: [NotificationSorting](#notificationsorting)} | 是 | 通知排序信息数组。 | -| sortedHashCode | 是 | 否 | Array\ | 是 | 通知唯一标识数组。 | - - - -## NotificationSorting - -**系统能力:**以下各项对应的系统能力均为SystemCapability.Notification.Notification - -| 名称 | 可读 | 可写 | 类型 | 必填 | 描述 | -| -------- | ---- | --- | ------------------------------------- | ---- | ------------ | -| slot | 是 | 否 | [NotificationSlot](#notificationslot) | 是 | 通知通道内容。 | -| hashCode | 是 | 否 | string | 是 | 通知唯一标识。 | -| ranking | 是 | 否 | number | 是 | 通知排序序号。 | +获取设备是否支持分布式通知。 +**系统能力**:SystemCapability.Notification.Notification +**返回值:** -## DoNotDisturbDate +| 类型 | 说明 | +| ------------------ | --------------- | +| Promise\ | Promise方式返回设备是否支持分布式通知的结果。
true 支持。
false 不支持。 | -**系统能力:**以下各项对应的系统能力均为SystemCapability.Notification.Notification +**示例:** -| 名称 | 可读 | 可写 | 类型 | 描述 | -| ----- | ---- | --- | ------------------------------------- | ------------------------ | -| type | 是 | 否 | [DoNotDisturbType](#donotdisturbtype) | 指定免打扰设置的时间类型。 | -| begin | 是 | 否 | Date | 指定免打扰设置的起点时间。 | -| end | 是 | 否 | Date | 指定免打扰设置的终点时间。 | +```javascript +Notification.isDistributedEnabled() + .then((data) => { + console.log('-------- isDistributedEnabled ----------'); + }); +``` +## Notification.enableDistributedByBundle8+ -## DoNotDisturbType +enableDistributedByBundle(bundle: BundleOption, enable: boolean, callback: AsyncCallback): void -**系统能力:**以下各项对应的系统能力均为SystemCapability.Notification.Notification +根据应用的包设置应用程序是否支持分布式通知。 +**系统能力**:SystemCapability.Notification.Notification -| 名称 | 值 | 说明 | -| ------------ | ---------------- | ------------------------------------------ | -| TYPE_NONE | DoNotDisturbType | 非通知勿扰类型。 | -| TYPE_ONCE | DoNotDisturbType | 以设置时间段(只看小时和分钟)一次执行勿扰。 | -| TYPE_DAILY | DoNotDisturbType | 以设置时间段(只看小时和分钟)每天执行勿扰。 | -| TYPE_CLEARLY | DoNotDisturbType | 以设置时间段(明确年月日时分)执行勿扰。 | +**参数:** +| 参数名 | 类型 | 必填 | 说明 | +| -------- | ------------------------ | ---- | -------------------------- | +| bundle | BundleOption | 是 | 应用的包。 | +| enable | boolean | 是 | 是否支持。 | +| callback | AsyncCallback\ | 是 | 应用程序是否支持分布式通知的回调函数。 | +**示例:** -## EnabledNotificationCallbackData +```javascript +function enableDistributedByBundleCallback() { + console.log('----------- enableDistributedByBundle ------------'); +}; -**系统能力:**以下各项对应的系统能力均为SystemCapability.Notification.Notification +var bundle = { + bundle: "bundleName1", +} -| 名称 | 可读 | 可写 | 类型 | 必填 | 描述 | -| ------ | ---- | --- | ------- | ---- | ---------------- | -| bundle | 是 | 否 | string | 否 | 应用的包名。 | -| uid | 是 | 否 | number | 否 | 应用的uid。 | -| enable | 是 | 否 | boolean | 否 | 应用通知使能状态。 | +var enable = true +Notification.enableDistributedByBundle(bundle, enable, enableDistributedByBundleCallback); +``` -## NotificationRequest -**系统能力:**以下各项对应的系统能力均为SystemCapability.Notification.Notification +## Notification.enableDistributedByBundle8+ -| 名称 | 可读 | 可写 | 类型 | 必填 | 描述 | -| --------------------- | ---- | --- | --------------------------------------------- | ---- | -------------------------- | -| content | 是 | 是 | [NotificationContent](#notificationcontent) | 是 | 通知内容。 | -| id | 是 | 是 | number | 否 | 通知ID。 | -| slotType | 是 | 是 | [SlotType](#slottype) | 否 | 通道类型。 | -| isOngoing | 是 | 是 | boolean | 否 | 是否进行时通知。 | -| isUnremovable | 是 | 是 | boolean | 否 | 是否可移除。 | -| deliveryTime | 是 | 是 | number | 否 | 通知发送时间。 | -| tapDismissed | 是 | 是 | boolean | 否 | 通知是否自动清除。 | -| autoDeletedTime | 是 | 是 | number | 否 | 自动清除的时间。 | -| wantAgent | 是 | 是 | WantAgent | 否 | 点击跳转的WantAgent。 | -| extraInfo | 是 | 是 | {[key: string]: any} | 否 | 扩展参数。 | -| color | 是 | 是 | number | 否 | 通知背景颜色。 | -| colorEnabled | 是 | 是 | boolean | 否 | 通知背景颜色是否使能。 | -| isAlertOnce | 是 | 是 | boolean | 否 | 设置是否仅有一次此通知警报。 | -| isStopwatch | 是 | 是 | boolean | 否 | 是否显示已用时间。 | -| isCountDown | 是 | 是 | boolean | 否 | 是否显示倒计时时间。 | -| isFloatingIcon | 是 | 是 | boolean | 否 | 是否显示状态栏图标。 | -| label | 是 | 是 | string | 否 | 通知标签。 | -| badgeIconStyle | 是 | 是 | number | 否 | 通知角标类型。 | -| showDeliveryTime | 是 | 是 | boolean | 否 | 是否显示分发时间。 | -| actionButtons | 是 | 是 | Array\<[NotificationActionButton](#notificationactionbutton)\> | 否 | 通知按钮,最多两个按钮。 | -| smallIcon | 是 | 是 | PixelMap | 否 | 通知小图标。 | -| largeIcon | 是 | 是 | PixelMap | 否 | 通知大图标。 | -| creatorBundleName | 是 | 否 | string | 否 | 创建通知的包名。 | -| creatorUid | 是 | 否 | number | 否 | 创建通知的UID。 | -| creatorPid | 是 | 否 | number | 否 | 创建通知的PID。 | -| hashCode | 是 | 否 | string | 否 | 通知唯一标识。 | -| classification | 是 | 是 | string | 否 | 通知分类。 | -| groupName | 是 | 是 | string | 否 | 组通知名称。 | -| template8+ | 是 | 是 | [NotificationTemplate](#notificationtemplate) | 否 | 通知模板。 | +根据bundleenableDistributedByBundle(bundle: BundleOption, enable: boolean): Promise +根据应用的包设置应用程序是否支持分布式通知。 +**系统能力**:SystemCapability.Notification.Notification -## NotificationSlot +**参数:** -**系统能力:**以下各项对应的系统能力均为SystemCapability.Notification.Notification +| 参数名 | 类型 | 必填 | 说明 | +| -------- | ------------------------ | ---- | -------------------------- | +| bundle | BundleOption | 是 | 应用的包。 | +| enable | boolean | 是 | 是否支持。 | -| 名称 | 可读 | 可写 | 类型 | 必填 | 描述 | -| -------------------- | ---- | --- | --------------------- | ---- | ------------------------------------------ | -| type | 是 | 是 | [SlotType](#slottype) | 是 | 通道类型。 | -| level | 是 | 是 | number | 否 | 通知级别,不设置则根据通知渠道类型有默认值。 | -| desc | 是 | 是 | string | 否 | 通知渠道描述信息。 | -| badgeFlag | 是 | 是 | boolean | 否 | 是否显示角标。 | -| bypassDnd | 是 | 是 | boolean | 否 | 置是否在系统中绕过免打扰模式。 | -| lockscreenVisibility | 是 | 是 | boolean | 否 | 在锁定屏幕上显示通知的模式。 | -| vibrationEnabled | 是 | 是 | boolean | 否 | 是否可振动。 | -| sound | 是 | 是 | string | 否 | 通知提示音。 | -| lightEnabled | 是 | 是 | boolean | 否 | 是否闪灯。 | -| lightColor | 是 | 是 | number | 否 | 通知灯颜色。 | -| vibrationValues | 是 | 是 | Array\ | 否 | 通知振动样式。 | +**示例:** -## NotificationContent +```javascript +var bundle = { + bundle: "bundleName1", +} -**系统能力:**以下各项对应的系统能力均为SystemCapability.Notification.Notification +var enable = true -| 名称 | 可读 | 可写 | 类型 | 必填 | 描述 | -| ----------- | ---- | --- | ------------------------------------------------------------ | ---- | ------------------ | -| contentType | 是 | 是 | [ContentType](#contenttype) | 是 | 通知内容类型。 | -| normal | 是 | 是 | [NotificationBasicContent](#notificationbasiccontent) | 否 | 基本类型通知内容。 | -| longText | 是 | 是 | [NotificationLongTextContent](#notificationlongtextcontent) | 否 | 长文本类型通知内容。 | -| multiLine | 是 | 是 | [NotificationMultiLineContent](#notificationmultilinecontent) | 否 | 多行类型通知内容。 | -| picture | 是 | 是 | [NotificationPictureContent](#notificationpicturecontent) | 否 | 图片类型通知内容。 | +Notification.enableDistributedByBundle(bundle, enable) + .then(() => { + console.log('-------- enableDistributedByBundle ----------'); + }); +``` +## Notification.isDistributedEnabledByBundle8+ +isDistributedEnabledByBundle(bundle: BundleOption, callback: AsyncCallback): void -## ContentType +根据应用的包获取应用程序是否支持分布式通知。 -**系统能力:**以下各项对应的系统能力均为SystemCapability.Notification.Notification +**系统能力**:SystemCapability.Notification.Notification -| 名称 | 值 | 说明 | -| --------------------------------- | ----------- | ------------------ | -| NOTIFICATION_CONTENT_BASIC_TEXT | ContentType | 普通类型通知。 | -| NOTIFICATION_CONTENT_LONG_TEXT | ContentType | 长文本类型通知。 | -| NOTIFICATION_CONTENT_PICTURE | ContentType | 图片类型通知。 | -| NOTIFICATION_CONTENT_CONVERSATION | ContentType | 社交类型通知。 | -| NOTIFICATION_CONTENT_MULTILINE | ContentType | 多行文本类型通知。 | +**参数:** +| 参数名 | 类型 | 必填 | 说明 | +| -------- | ------------------------ | ---- | -------------------------- | +| bundle | BundleOption | 是 | 应用的包。 | +| callback | AsyncCallback\ | 是 | 应用程序是否支持分布式通知的回调函数。 | +**示例:** -## NotificationBasicContent +```javascript +function isDistributedEnabledByBundleCallback(data) { + console.log('----------- isDistributedEnabledByBundle ------------', data); +}; -**系统能力:**以下各项对应的系统能力均为SystemCapability.Notification.Notification +var bundle = { + bundle: "bundleName1", +} -| 名称 | 可读 | 可写 | 类型 | 必填 | 描述 | -| -------------- | ---- | ---- | ------ | ---- | ---------------------------------- | -| title | 是 | 是 | string | 是 | 通知标题。 | -| text | 是 | 是 | string | 是 | 通知内容。 | -| additionalText | 是 | 是 | string | 是 | 通知次要内容,是对通知内容的补充。 | +Notification.enableDistributedByBundle(bundle, isDistributedEnabledByBundleCallback); +``` -## NotificationLongTextContent +## Notification.isDistributedEnabledByBundle8+ -**系统能力:**以下各项对应的系统能力均为SystemCapability.Notification.Notification +isDistributedEnabledByBundle(bundle: BundleOption): Promise -| 名称 | 可读 | 可写 | 类型 | 必填 | 描述 | -| -------------- | ---- | --- | ------ | ---- | -------------------------------- | -| title | 是 | 是 | string | 是 | 通知标题。 | -| text | 是 | 是 | string | 是 | 通知内容。 | -| additionalText | 是 | 是 | string | 是 | 通知次要内容,是对通知内容的补充。 | -| longText | 是 | 是 | string | 是 | 通知的长文本。 | -| briefText | 是 | 是 | string | 是 | 通知概要内容,是对通知内容的总结。 | -| expandedTitle | 是 | 是 | string | 是 | 通知展开时的标题。 | +根据应用的包获取应用程序是否支持分布式通知。 +**系统能力**:SystemCapability.Notification.Notification +**参数:** -## NotificationMultiLineContent +| 参数名 | 类型 | 必填 | 说明 | +| -------- | ------------------------ | ---- | -------------------------- | +| bundle | BundleOption | 是 | 应用的包。 | -**系统能力:**以下各项对应的系统能力均为SystemCapability.Notification.Notification +**返回值:** -| 名称 | 可读 | 可写 | 类型 | 必填 | 描述 | -| -------------- | --- | --- | --------------- | ---- | -------------------------------- | -| title | 是 | 是 | string | 是 | 通知标题。 | -| text | 是 | 是 | string | 是 | 通知内容。 | -| additionalText | 是 | 是 | string | 是 | 通知次要内容,是对通知内容的补充。 | -| briefText | 是 | 是 | string | 是 | 通知概要内容,是对通知内容的总结。 | -| longTitle | 是 | 是 | string | 是 | 通知展开时的标题。 | -| lines | 是 | 是 | Array\ | 是 | 通知的多行文本。 | +| 类型 | 说明 | +| ------------------ | --------------- | +| Promise\ | Promise方式返回应用程序是否支持分布式通知的结果。
true 支持。
false 不支持。 | +**示例:** +```javascript +var bundle = { + bundle: "bundleName1", +} -## NotificationPictureContent +Notification.isDistributedEnabledByBundle(bundle) + .then((data) => { + console.log('-------- isDistributedEnabledByBundle ----------', data); + }); +``` -**系统能力:**以下各项对应的系统能力均为SystemCapability.Notification.Notification -| 名称 | 可读 | 可写 | 类型 | 必填 | 描述 | -| -------------- | ---- | --- | -------------- | ---- | -------------------------------- | -| title | 是 | 是 | string | 是 | 通知标题。 | -| text | 是 | 是 | string | 是 | 通知内容。 | -| additionalText | 是 | 是 | string | 是 | 通知次要内容,是对通知内容的补充。 | -| briefText | 是 | 是 | string | 是 | 通知概要内容,是对通知内容的总结。 | -| expandedTitle | 是 | 是 | string | 是 | 通知展开时的标题。 | -| picture | 是 | 是 | image.PixelMap | 是 | 通知的图片内容。 | +## Notification.getDeviceRemindType8+ +getDeviceRemindType(callback: AsyncCallback): void +获取通知的提醒方式。 -## BundleOption +**系统能力**:SystemCapability.Notification.Notification -**系统能力:**以下各项对应的系统能力均为SystemCapability.Notification.Notification +**参数:** -| 名称 | 可读 | 可写 | 类型 | 必填 | 描述 | -| ------ | ---- | --- | ------ | ---- | ------ | -| bundle | 是 | 是 | string | 是 | 包名。 | -| uid | 是 | 是 | number | 否 | 用户id。 | +| 参数名 | 类型 | 必填 | 说明 | +| -------- | --------------------------------- | ---- | -------------------------- | +| callback | AsyncCallback\ | 是 | 获取通知的提醒方式的回调函数。 | +**示例:** +```javascript +function getDeviceRemindTypeCallback(data) { + console.log('----------- getDeviceRemindType ------------', data); +}; -## NotificationKey +Notification.getDeviceRemindType(getDeviceRemindTypeCallback); +``` -**系统能力:**以下各项对应的系统能力均为SystemCapability.Notification.Notification -| 名称 | 可读 | 可写 | 类型 | 必填 | 描述 | -| ----- | ---- | --- | ------ | ---- | -------- | -| id | 是 | 是 | number | 是 | 通知ID。 | -| label | 是 | 是 | string | 否 | 通知标签。< | +## Notification.getDeviceRemindType8+ +getDeviceRemindType(): Promise -## SlotType +获取通知的提醒方式。 -**系统能力:**以下各项对应的系统能力均为SystemCapability.Notification.Notification +**系统能力**:SystemCapability.Notification.Notification -| 名称 | 值 | 说明 | -| -------------------- | -------- | ---------- | -| SOCIAL_COMMUNICATION | SlotType | 社交类型。 | -| SERVICE_INFORMATION | SlotType | 服务类型。 | -| CONTENT_INFORMATION | SlotType | 内容类型。 | -| OTHER_TYPES | SlotType | 其他类型。 | +**返回值:** +| 类型 | 说明 | +| ------------------ | --------------- | +| Promise\ | Promise方式返回通知的提醒方式的结果。 | +**示例:** -## NotificationActionButton +```javascript +Notification.getDeviceRemindType() + .then((data) => { + console.log('-------- getDeviceRemindType ----------', data); + }); +``` -**系统能力:**以下各项对应的系统能力均为SystemCapability.Notification.Notification +## Notification.show -| 名称 | 可读 | 可写 | 类型 | 必填 | 描述 | -| --------- | --- | ---- | ----------------------------------------------- | ---- | ------------------------- | -| title | 是 | 是 | string | 是 | 按钮标题。 | -| wantAgent | 是 | 是 | WantAgent | 是 | 点击按钮时触发的WantAgent。 | -| extras | 是 | 是 | Array\ | 否 | 按钮扩展信息。 | -| icon | 是 | 是 | image.PixelMap | 否 | 按钮图标。 | -| userInput | 是 | 是 | [NotificationUserInput](#notificationuserinput) | 否 | 用户输入对象实例。 | +show(options?: ShowNotificationOptions): void +展示通知事件。 +**系统能力**:SystemCapability.Notification.Notification -## NotificationUserInput +**参数:** -**系统能力:**SystemCapability.Notification.Notification +| 参数名 | 类型 | 必填 | 说明 | +| ------- | ------------------------ | ---- | ---------------- | +| options | ShowNotificationOptions | 否 | 需要展示通知的参数 | -| 名称 | 可读 | 可写 | 类型 | 必填 | 描述 | -| -------- | --- | ---- | ------ | ---- | ----------------------------- | -| inputKey | 是 | 是 | string | 是 | 用户输入时用于标识此输入的key。 | +**示例:** +```javascript +var options = { + contentTitle: 'contentTitle', + contentText: 'contentText', + clickAction: { + bundleName: 'bundleName', + abilityName: 'abilityName', + uri: 'uri', + } +}; +Notification.show(options); +``` -## NotificationSubscribeInfo -**系统能力:**以下各项对应的系统能力均为SystemCapability.Notification.Notification -| 名称 | 可读 | 可写 | 类型 | 必填 | 描述 | -| ----------- | --- | ---- | --------------- | ---- | ------------------------------- | -| bundleNames | 是 | 是 | Array\ | 否 | 指定订阅哪些包名的APP发来的通知。 | -| userId | 是 | 是 | number | 否 | 指定订阅哪个用户下发来的通知。 | +## NotificationSubscriber +### onConsume +onConsume?:(data: [SubscribeCallbackData](#subscribecallbackdata)) +接收通知回调函数。 -## NotificationTemplate +**系统能力**:SystemCapability.Notification.Notification -模板信息 +**参数:** -**系统能力:**以下各项对应的系统能力均为SystemCapability.Notification.Notification +| 参数名 | 类型 | 必填 | 说明 | +| ------------ | ------------------------ | ---- | -------------------------- | +| data | AsyncCallback\<[SubscribeCallbackData](#subscribecallbackdata)\> | 是 | 回调返回接收到的通知信息。 | -| 名称 | 参数类型 | 可读 | 可写 | 说明 | -| ---- | ---------------------- | ---- | ---- | ---------- | -| name | string | 是 | 是 | 模板名称。 | -| data | {[key:string]: Object} | 是 | 是 | 模板数据。 | +**示例:** +```javascript +function subscribeCallback(err) { + if (err.code) { + console.info("subscribe failed " + JSON.stringify(err)); + } else { + console.info("subscribeCallback"); + } +}; +function onConsumeCallback(data) { + console.info('===> onConsume in test'); + let req = data.request; + console.info('===> onConsume callback req.id:' + req.id); + let wantAgent = data.wantAgent; + wantAgent .getWant(wantAgent) + .then((data1) => { + console.log('===> getWant success want:' + JSON.stringfy(data1)); + }) + .catch((err) => { + console.error('===> getWant failed because' + JSON.stringfy(err)); + }); + console.info('===> onConsume callback req.wantAgent:' + JSON.stringfy(req.wantAgent)); +}; -## ActionResult +var subscriber = { + onConsume: onConsumeCallback +}; -**系统能力:**以下各项对应的系统能力均为SystemCapability.Notification.Notification +Notification.subscribe(subscriber, subscribeCallback); +``` -| 名称 | 参数类型 | 可读 | 可写 | 说明 | -| ------------ | ---------- | ---- | ---- | -------- | -| bundleName | string | 是 | 是 | 点击通知后重定向应用的包名。 | -| abilityName | string | 是 | 是 | 点击通知后重定向应用的的Ability名称。 | -| uri | string | 是 | 是 | 要重定向到的页面的Uri。 | +### onCancel +onCancel?:(data: [SubscribeCallbackData](#subscribecallbackdata)) +删除通知回调函数。 -## ShowNotificationOptions +**系统能力**:SystemCapability.Notification.Notification -**系统能力:**以下各项对应的系统能力均为SystemCapability.Notification.Notification +**参数:** -| 名称 | 参数类型 | 可读 | 可写 | 说明 | -| ------------ | ---------- | ---- | ---- | -------- | -| contentTitle | string | 是 | 是 | 通知的标题。 | -| contentText | string | 是 | 是 | 通知的内容。 | -| clickAction | ActionResult | 是 | 是 | 点击通知后触发的动作。 | +| 参数名 | 类型 | 必填 | 说明 | +| ------------ | ------------------------ | ---- | -------------------------- | +| data | AsyncCallback\<[SubscribeCallbackData](#subscribecallbackdata)\> | 是 | 回调返回接收到的通知信息。 | +**示例:** +```javascript +function subscribeCallback(err) { + if (err.code) { + console.info("subscribe failed " + JSON.stringify(err)); + } else { + console.info("subscribeCallback"); + } +}; -## WantAgent接口 +function onCancelCallback(data) { + console.info('===> onCancel in test'); + let req = data.request; + console.info('===> onCancel callback req.id:' + req.id); +} -## 导入模块 +var subscriber = { + onCancel: onCancelCallback +}; -```js -import WantAgent from '@ohos.wantAgent'; +Notification.subscribe(subscriber, subscribeCallback); ``` +### onUpdate +onUpdate?:(data: [NotificationSortingMap](#notificationsortingmap)) -## WantAgent.getWantAgent - -getWantAgent(info: WantAgentInfo, callback: AsyncCallback\): void +更新通知排序回调函数。 -创建WantAgent(callback形式)。 - -**系统能力**:SystemCapability.Ability.AbilityRuntime.Core +**系统能力**:SystemCapability.Notification.Notification **参数:** -| 名称 | 可读 | 可写 | 类型 | 必填 | 描述 | -| -------- | --- | ---- | -------------------------- | ---- | ----------------------- | -| info | 是 | 否 | WantAgentInfo | 是 | WantAgent信息。 | -| callback | 是 | 否 | AsyncCallback\ | 是 | 创建WantAgent的回调方法。 | +| 参数名 | 类型 | 必填 | 说明 | +| ------------ | ------------------------ | ---- | -------------------------- | +| data | [NotificationSortingMap](#notificationsortingmap) | 是 | | **示例:** -```js -import WantAgent from '@ohos.wantAgent'; -import { OperationType, WantAgentFlags } from '@ohos.wantagent'; +```javascript +function subscribeCallback(err) { + if (err.code) { + console.info("subscribe failed " + JSON.stringify(err)); + } else { + console.info("subscribeCallback"); + } +}; -//getWantAgent回调 -function getWantAgentCallback(err, data) { - console.info("==========================>getWantAgentCallback=======================>"); -} -//WantAgentInfo对象 -var wantAgentInfo = { - wants: [ - { - deviceId: "deviceId", - bundleName: "com.neu.setResultOnAbilityResultTest1", - abilityName: "com.example.test.MainAbility", - action: "action1", - entities: ["entity1"], - type: "MIMETYPE", - uri: "key={true,true,false}", - parameters: - { - mykey0: 2222, - mykey1: [1, 2, 3], - mykey2: "[1, 2, 3]", - mykey3: "ssssssssssssssssssssssssss", - mykey4: [false, true, false], - mykey5: ["qqqqq", "wwwwww", "aaaaaaaaaaaaaaaaa"], - mykey6: true, - } - } - ], - operationType: OperationType.START_ABILITIES, - requestCode: 0, - wantAgentFlags:[WantAgentFlags.UPDATE_PRESENT_FLAG] +function onUpdateCallback() { + console.info('===> onUpdate in test'); } -WantAgent.getWantAgent(wantAgentInfo, getWantAgentCallback) -``` - - +var subscriber = { + onUpdate: onUpdateCallback +}; -## WantAgent.getWantAgent +Notification.subscribe(subscriber, subscribeCallback); +``` -getWantAgent(info: WantAgentInfo): Promise\ +### onConnect -创建WantAgent(Promise形式)。 +onConnect?:void -**系统能力**:SystemCapability.Ability.AbilityRuntime.Core +注册订阅回调函数。 -**参数:** +**系统能力**:SystemCapability.Notification.Notification -| 名称 | 可读 | 可写 | 类型 | 必填 | 描述 | -| ---- | --- | ---- | ------------- | ---- | ------------- | -| info | 是 | 否 | WantAgentInfo | 是 | WantAgent信息。 | +**示例:** -**返回值:** +```javascript +function subscribeCallback(err) { + if (err.code) { + console.info("subscribe failed " + JSON.stringify(err)); + } else { + console.info("subscribeCallback"); + } +}; -| 类型 | 说明 | -| ----------------------------------------------------------- | ------------------------------------------------------------ | -| Promise\ | 以Promise形式返回WantAgent。 | - -**示例:** - -```js -import WantAgent from '@ohos.wantAgent'; -import { OperationType, WantAgentFlags } from '@ohos.wantagent'; - -//WantAgentInfo对象 -var wantAgentInfo = { - wants: [ - { - deviceId: "deviceId", - bundleName: "com.neu.setResultOnAbilityResultTest1", - abilityName: "com.example.test.MainAbility", - action: "action1", - entities: ["entity1"], - type: "MIMETYPE", - uri: "key={true,true,false}", - parameters: - { - mykey0: 2222, - mykey1: [1, 2, 3], - mykey2: "[1, 2, 3]", - mykey3: "ssssssssssssssssssssssssss", - mykey4: [false, true, false], - mykey5: ["qqqqq", "wwwwww", "aaaaaaaaaaaaaaaaa"], - mykey6: true, - } - } - ], - operationType: OperationType.START_ABILITIES, - requestCode: 0, - wantAgentFlags:[WantAgentFlags.UPDATE_PRESENT_FLAG] +function onConnectCallback() { + console.info('===> onConnect in test'); } -WantAgent.getWantAgent(wantAgentInfo).then((data) => { - console.info("==========================>getWantAgentCallback=======================>"); -}); -``` - - - -## WantAgent.getBundleName +var subscriber = { + onConnect: onConnectCallback +}; -getBundleName(agent: WantAgent, callback: AsyncCallback\): void +Notification.subscribe(subscriber, subscribeCallback); +``` -获取WantAgent实例的包名(callback形式)。 +### onDisconnect -**系统能力**:SystemCapability.Ability.AbilityRuntime.Core +onDisconnect?:void -**参数:** +取消订阅回调函数。 -| 名称 | 可读 | 可写 | 类型 | 必填 | 描述 | -| -------- | --- | ---- | ----------------------- | ---- | --------------------------------- | -| agent | 是 | 否 | WantAgent | 是 | WantAgent对象。 | -| callback | 是 | 否 | AsyncCallback\ | 是 | 获取WantAgent实例的包名的回调方法。 | +**系统能力**:SystemCapability.Notification.Notification **示例:** -```js -import WantAgent from '@ohos.wantAgent'; -import { OperationType, WantAgentFlags } from '@ohos.wantagent'; - -//wantAgent对象 -var wantAgent; - -//getWantAgent回调 -function getWantAgentCallback(err, data) { - console.info("==========================>getWantAgentCallback=======================>"); - if (err.code == 0) { - wantAgent = data; +```javascript +function subscribeCallback(err) { + if (err.code) { + console.info("subscribe failed " + JSON.stringify(err)); } else { - console.info('----getWantAgent failed!----'); + console.info("subscribeCallback"); } -} -//WantAgentInfo对象 -var wantAgentInfo = { - wants: [ - { - deviceId: "deviceId", - bundleName: "com.neu.setResultOnAbilityResultTest1", - abilityName: "com.example.test.MainAbility", - action: "action1", - entities: ["entity1"], - type: "MIMETYPE", - uri: "key={true,true,false}", - parameters: - { - mykey0: 2222, - mykey1: [1, 2, 3], - mykey2: "[1, 2, 3]", - mykey3: "ssssssssssssssssssssssssss", - mykey4: [false, true, false], - mykey5: ["qqqqq", "wwwwww", "aaaaaaaaaaaaaaaaa"], - mykey6: true, - } - } - ], - operationType: OperationType.START_ABILITIES, - requestCode: 0, - wantAgentFlags:[WantAgentFlags.UPDATE_PRESENT_FLAG] -} - -WantAgent.getWantAgent(wantAgentInfo, getWantAgentCallback) +}; -//getBundleName回调 -function getBundleNameCallback(err, data) { - console.info("==========================>getBundleNameCallback=======================>"); +function onDisconnectCallback() { + console.info('===> onDisconnect in test'); } -WantAgent.getBundleName(wantAgent, getBundleNameCallback) -``` - +var subscriber = { + onDisconnect: onDisconnectCallback +}; -## WantAgent.getBundleName +Notification.subscribe(subscriber, subscribeCallback); +``` -getBundleName(agent: WantAgent): Promise\ +### onDestroy -获取WantAgent实例的包名(Promise形式)。 +onDestroy?:void -**系统能力**:SystemCapability.Ability.AbilityRuntime.Core +服务失联回调函数。 -**参数:** +**系统能力**:SystemCapability.Notification.Notification -| 名称 | 可读 | 可写 | 类型 | 必填 | 描述 | -| ----- | --- | ---- | --------- | ---- | ------------- | -| agent | 是 | 否 | WantAgent | 是 | WantAgent对象。 | +**示例:** -**返回值:** +```javascript +function subscribeCallback(err) { + if (err.code) { + console.info("subscribe failed " + JSON.stringify(err)); + } else { + console.info("subscribeCallback"); + } +}; -| 类型 | 说明 | -| ----------------------------------------------------------- | ------------------------------------------------------------ | -| Promise\ | 以Promise形式返回获取WantAgent实例的包名。 | - -**示例:** - -```js -import WantAgent from '@ohos.wantAgent'; -import { OperationType, WantAgentFlags } from '@ohos.wantagent'; - -//wantAgent对象 -var wantAgent; - -//WantAgentInfo对象 -var wantAgentInfo = { - wants: [ - { - deviceId: "deviceId", - bundleName: "com.neu.setResultOnAbilityResultTest1", - abilityName: "com.example.test.MainAbility", - action: "action1", - entities: ["entity1"], - type: "MIMETYPE", - uri: "key={true,true,false}", - parameters: - { - mykey0: 2222, - mykey1: [1, 2, 3], - mykey2: "[1, 2, 3]", - mykey3: "ssssssssssssssssssssssssss", - mykey4: [false, true, false], - mykey5: ["qqqqq", "wwwwww", "aaaaaaaaaaaaaaaaa"], - mykey6: true, - } - } - ], - operationType: OperationType.START_ABILITIES, - requestCode: 0, - wantAgentFlags:[WantAgentFlags.UPDATE_PRESENT_FLAG] +function onDestroyCallback() { + console.info('===> onDestroy in test'); } -WantAgent.getWantAgent(wantAgentInfo).then((data) => { - console.info("==========================>getWantAgentCallback=======================>"); - wantAgent = data; -}); +var subscriber = { + onDestroy: onDestroyCallback +}; -WantAgent.getBundleName(wantAgent).then((data) => { - console.info("==========================>getBundleNameCallback=======================>"); -}); +Notification.subscribe(subscriber, subscribeCallback); ``` +### onDoNotDisturbDateChange +onDoNotDisturbDateChange?:(mode: Notification.[DoNotDisturbDate](#donotdisturbdate)) -## WantAgent.getUid +免打扰时间选项变更回调函数。 -getUid(agent: WantAgent, callback: AsyncCallback\): void - -获取WantAgent实例的用户ID(callback形式)。 - -**系统能力**:SystemCapability.Ability.AbilityRuntime.Core +**系统能力**:SystemCapability.Notification.Notification **参数:** -| 名称 | 可读 | 可写 | 类型 | 必填 | 描述 | -| -------- | --- | ---- | ----------------------- | ---- | ----------------------------------- | -| agent | 是 | 否 | WantAgent | 是 | WantAgent对象。 | -| callback | 是 | 否 | AsyncCallback\ | 是 | 获取WantAgent实例的用户ID的回调方法。 | +| 参数名 | 类型 | 必填 | 说明 | +| ------------ | ------------------------ | ---- | -------------------------- | +| mode | Notification.[DoNotDisturbDate](#donotdisturbdate) | 是 | 回调返回免打扰时间选项变更。 | **示例:** - -```js -import WantAgent from '@ohos.wantAgent'; -import { OperationType, WantAgentFlags } from '@ohos.wantagent'; - -//wantAgent对象 -var wantAgent; - -//getWantAgent回调 -function getWantAgentCallback(err, data) { - console.info("==========================>getWantAgentCallback=======================>"); - if (err.code == 0) { - wantAgent = data; +```javascript +function subscribeCallback(err) { + if (err.code) { + console.info("subscribe failed " + JSON.stringify(err)); } else { - console.info('----getWantAgent failed!----'); + console.info("subscribeCallback"); } -} -//WantAgentInfo对象 -var wantAgentInfo = { - wants: [ - { - deviceId: "deviceId", - bundleName: "com.neu.setResultOnAbilityResultTest1", - abilityName: "com.example.test.MainAbility", - action: "action1", - entities: ["entity1"], - type: "MIMETYPE", - uri: "key={true,true,false}", - parameters: - { - mykey0: 2222, - mykey1: [1, 2, 3], - mykey2: "[1, 2, 3]", - mykey3: "ssssssssssssssssssssssssss", - mykey4: [false, true, false], - mykey5: ["qqqqq", "wwwwww", "aaaaaaaaaaaaaaaaa"], - mykey6: true, - } - } - ], - operationType: OperationType.START_ABILITIES, - requestCode: 0, - wantAgentFlags:[WantAgentFlags.UPDATE_PRESENT_FLAG] +}; + +function onDoNotDisturbDateChangeCallback() { + console.info('===> onDoNotDisturbDateChange in test'); } -WantAgent.getWantAgent(wantAgentInfo, getWantAgentCallback) +var subscriber = { + onDoNotDisturbDateChange: onDoNotDisturbDateChangeCallback +}; -//getUid回调 -function getUidCallback(err, data) { - console.info("==========================>getUidCallback=======================>"); -} -WantAgent.getUid(wantAgent, getUidCallback) +Notification.subscribe(subscriber, subscribeCallback); ``` +### onEnabledNotificationChanged -## WantAgent.getUid - -getUid(agent: WantAgent): Promise\ +onEnabledNotificationChanged?:(callbackData: [EnabledNotificationCallbackData](#enablednotificationcallbackdata)) -获取WantAgent实例的用户ID(Promise形式)。 +监听应用通知使能变化。 -**系统能力**:SystemCapability.Ability.AbilityRuntime.Core +**系统能力**:SystemCapability.Notification.Notification **参数:** -| 名称 | 可读 | 可写 | 类型 | 必填 | 描述 | -| ----- | --- | ---- | --------- | ---- | ------------- | -| agent | 是 | 否 | WantAgent | 是 | WantAgent对象。 | - -**返回值:** +| 参数名 | 类型 | 必填 | 说明 | +| ------------ | ------------------------ | ---- | -------------------------- | +| callback | AsyncCallback\<[EnabledNotificationCallbackData](#enablednotificationcallbackdata)\> | 是 | 回调返回监听到的应用信息。 | -| 类型 | 说明 | -| ----------------------------------------------------------- | ------------------------------------------------------------ | -| Promise\ | 以Promise形式返回获取WantAgent实例的用户ID。 | - -**示例:** - -```js -import WantAgent from '@ohos.wantAgent'; -import { OperationType, WantAgentFlags } from '@ohos.wantagent'; - -//wantAgent对象 -var wantAgent; - -//WantAgentInfo对象 -var wantAgentInfo = { - wants: [ - { - deviceId: "deviceId", - bundleName: "com.neu.setResultOnAbilityResultTest1", - abilityName: "com.example.test.MainAbility", - action: "action1", - entities: ["entity1"], - type: "MIMETYPE", - uri: "key={true,true,false}", - parameters: - { - mykey0: 2222, - mykey1: [1, 2, 3], - mykey2: "[1, 2, 3]", - mykey3: "ssssssssssssssssssssssssss", - mykey4: [false, true, false], - mykey5: ["qqqqq", "wwwwww", "aaaaaaaaaaaaaaaaa"], - mykey6: true, - } - } - ], - operationType: OperationType.START_ABILITIES, - requestCode: 0, - wantAgentFlags:[WantAgentFlags.UPDATE_PRESENT_FLAG] -} +**示例:** -WantAgent.getWantAgent(wantAgentInfo).then((data) => { - console.info("==========================>getWantAgentCallback=======================>"); - wantAgent = data; -}); +```javascript +function subscribeCallback(err) { + if (err.code) { + console.info("subscribe failed " + JSON.stringify(err)); + } else { + console.info("subscribeCallback"); + } +}; -WantAgent.getUid(wantAgent).then((data) => { - console.info("==========================>getUidCallback=======================>"); -}); -``` +function onEnabledNotificationChangedCallback(err, callbackData) { + if (err.code) { + console.info("subscribe failed " + JSON.stringify(err)); + } else { + console.info("bundle: ", callbackData.bundle); + console.info("uid: ", callbackData.uid); + console.info("enable: ", callbackData.enable); + } +}; +var subscriber = { + onEnabledNotificationChanged: onEnabledNotificationChangedCallback +}; +Notification.subscribe(subscriber, subscribeCallback); +``` -## WantAgent.getWant -getWant(agent: WantAgent, callback: AsyncCallback\): void -获取WantAgent对象的want(callback形式)。 +## SubscribeCallbackData -**系统能力**:SystemCapability.Ability.AbilityRuntime.Core +**系统能力**:以下各项对应的系统能力均为SystemCapability.Notification.Notification -**参数:** +| 名称 | 可读 | 可写 | 类型 | 必填 | 描述 | +| --------------- | ---- | --- | ------------------------------------------------- | ---- | -------- | +| request | 是 | 否 | [NotificationRequest](#notificationrequest) | 是 | 通知内容。 | +| sortingMap | 是 | 否 | [NotificationSortingMap](#notificationsortingmap) | 否 | 排序信息。 | +| reason | 是 | 否 | number | 否 | 删除原因。 | +| sound | 是 | 否 | string | 否 | 通知声音。 | +| vibrationValues | 是 | 否 | Array\ | 否 | 通知震动。 | -| 名称 | 可读 | 可写 | 类型 | 必填 | 描述 | -| -------- | --- | ---- | --------------------- | ---- | ------------------------------- | -| agent | 是 | 否 | WantAgent | 是 | WantAgent对象。 | -| callback | 是 | 否 | AsyncCallback\ | 是 | 获取WantAgent对象want的回调方法。 | +## NotificationSortingMap -**示例:** +**系统能力**:以下各项对应的系统能力均为SystemCapability.Notification.Notification -```js -import WantAgent from '@ohos.wantAgent'; -import { OperationType, WantAgentFlags } from '@ohos.wantagent'; +| 名称 | 可读 | 可写 | 类型 | 必填 | 描述 | +| -------------- | ---- | --- | ------------------------------------------------------------ | ---- | ---------------- | +| sortings | 是 | 否 | {[key: string]: [NotificationSorting](#notificationsorting)} | 是 | 通知排序信息数组。 | +| sortedHashCode | 是 | 否 | Array\ | 是 | 通知唯一标识数组。 | -//wantAgent对象 -var wantAgent; -//getWantAgent回调 -function getWantAgentCallback(err, data) { - console.info("==========================>getWantAgentCallback=======================>"); - if (err.code == 0) { - wantAgent = data; - } else { - console.info('----getWantAgent failed!----'); - } -} -//WantAgentInfo对象 -var wantAgentInfo = { - wants: [ - { - deviceId: "deviceId", - bundleName: "com.neu.setResultOnAbilityResultTest1", - abilityName: "com.example.test.MainAbility", - action: "action1", - entities: ["entity1"], - type: "MIMETYPE", - uri: "key={true,true,false}", - parameters: - { - mykey0: 2222, - mykey1: [1, 2, 3], - mykey2: "[1, 2, 3]", - mykey3: "ssssssssssssssssssssssssss", - mykey4: [false, true, false], - mykey5: ["qqqqq", "wwwwww", "aaaaaaaaaaaaaaaaa"], - mykey6: true, - } - } - ], - operationType: OperationType.START_ABILITIES, - requestCode: 0, - wantAgentFlags:[WantAgentFlags.UPDATE_PRESENT_FLAG] -} -WantAgent.getWantAgent(wantAgentInfo, getWantAgentCallback) +## NotificationSorting -//getWant回调 -function getWantCallback(err, data) { - console.info("==========================>getWantCallback=======================>"); -} -WantAgent.getWant(wantAgent, getWantCallback) -``` +**系统能力**:以下各项对应的系统能力均为SystemCapability.Notification.Notification +| 名称 | 可读 | 可写 | 类型 | 必填 | 描述 | +| -------- | ---- | --- | ------------------------------------- | ---- | ------------ | +| slot | 是 | 否 | [NotificationSlot](#notificationslot) | 是 | 通知通道内容。 | +| hashCode | 是 | 否 | string | 是 | 通知唯一标识。 | +| ranking | 是 | 否 | number | 是 | 通知排序序号。 | -## WantAgent.getWant -getWant(agent: WantAgent): Promise\ +## DoNotDisturbDate -获取WantAgent对象的want(Promise形式)。 +**系统能力**:以下各项对应的系统能力均为SystemCapability.Notification.Notification -**系统能力**:SystemCapability.Ability.AbilityRuntime.Core +| 名称 | 可读 | 可写 | 类型 | 描述 | +| ----- | ---- | --- | ------------------------------------- | ------------------------ | +| type | 是 | 否 | [DoNotDisturbType](#donotdisturbtype) | 指定免打扰设置的时间类型。 | +| begin | 是 | 否 | Date | 指定免打扰设置的起点时间。 | +| end | 是 | 否 | Date | 指定免打扰设置的终点时间。 | -**参数:** -| 名称 | 可读 | 可写 | 类型 | 必填 | 描述 | -| ----- | --- | ---- | --------- | ---- | ------------- | -| agent | 是 | 否 | WantAgent | 是 | WantAgent对象。 | -**返回值:** +## DoNotDisturbType8+ -| 类型 | 说明 | -| ----------------------------------------------------------- | ------------------------------------------------------------ | -| Promise\ | 以Promise形式返回获取WantAgent对象的want。 | - -**示例:** - -```js -import WantAgent from '@ohos.wantAgent'; -import { OperationType, WantAgentFlags } from '@ohos.wantagent'; - -//wantAgent对象 -var wantAgent; - -//WantAgentInfo对象 -var wantAgentInfo = { - wants: [ - { - deviceId: "deviceId", - bundleName: "com.neu.setResultOnAbilityResultTest1", - abilityName: "com.example.test.MainAbility", - action: "action1", - entities: ["entity1"], - type: "MIMETYPE", - uri: "key={true,true,false}", - parameters: - { - mykey0: 2222, - mykey1: [1, 2, 3], - mykey2: "[1, 2, 3]", - mykey3: "ssssssssssssssssssssssssss", - mykey4: [false, true, false], - mykey5: ["qqqqq", "wwwwww", "aaaaaaaaaaaaaaaaa"], - mykey6: true, - } - } - ], - operationType: OperationType.START_ABILITIES, - requestCode: 0, - wantAgentFlags:[WantAgentFlags.UPDATE_PRESENT_FLAG] -} +**系统能力**:以下各项对应的系统能力均为SystemCapability.Notification.Notification -WantAgent.getWantAgent(wantAgentInfo).then((data) => { - console.info("==========================>getWantAgentCallback=======================>"); - wantAgent = data; -}); -WantAgent.getWant(wantAgent).then((data) => { - console.info("==========================>getWantCallback=======================>"); -}); -``` +| 名称 | 值 | 说明 | +| ------------ | ---------------- | ------------------------------------------ | +| TYPE_NONE | DoNotDisturbType | 非通知勿扰类型。 | +| TYPE_ONCE | DoNotDisturbType | 以设置时间段(只看小时和分钟)一次执行勿扰。 | +| TYPE_DAILY | DoNotDisturbType | 以设置时间段(只看小时和分钟)每天执行勿扰。 | +| TYPE_CLEARLY | DoNotDisturbType | 以设置时间段(明确年月日时分)执行勿扰。 | -## WantAgent.cancel +## EnabledNotificationCallbackData -cancel(agent: WantAgent, callback: AsyncCallback\): void +**系统能力**:以下各项对应的系统能力均为SystemCapability.Notification.Notification -取消WantAgent实例(callback形式)。 +| 名称 | 可读 | 可写 | 类型 | 必填 | 描述 | +| ------ | ---- | --- | ------- | ---- | ---------------- | +| bundle | 是 | 否 | string | 否 | 应用的包名。 | +| uid | 是 | 否 | number | 否 | 应用的uid。 | +| enable | 是 | 否 | boolean | 否 | 应用通知使能状态。 | -**系统能力**:SystemCapability.Ability.AbilityRuntime.Core -**参数:** -| 名称 | 可读 | 可写 | 类型 | 必填 | 描述 | -| -------- | --- | ---- | --------------------- | ---- | --------------------------- | -| agent | 是 | 否 | WantAgent | 是 | WantAgent对象。 | -| callback | 是 | 否 | AsyncCallback\ | 是 | 取消WantAgent实例的回调方法。 | +## NotificationRequest -**示例:** +**系统能力**:以下各项对应的系统能力均为SystemCapability.Notification.Notification -```js -import WantAgent from '@ohos.wantAgent'; -import { OperationType, WantAgentFlags } from '@ohos.wantagent'; +| 名称 | 可读 | 可写 | 类型 | 必填 | 描述 | +| --------------------- | ---- | --- | --------------------------------------------- | ---- | -------------------------- | +| content | 是 | 是 | [NotificationContent](#notificationcontent) | 是 | 通知内容。 | +| id | 是 | 是 | number | 否 | 通知ID。 | +| slotType | 是 | 是 | [SlotType](#slottype) | 否 | 通道类型。 | +| isOngoing | 是 | 是 | boolean | 否 | 是否进行时通知。 | +| isUnremovable | 是 | 是 | boolean | 否 | 是否可移除。 | +| deliveryTime | 是 | 是 | number | 否 | 通知发送时间。 | +| tapDismissed | 是 | 是 | boolean | 否 | 通知是否自动清除。 | +| autoDeletedTime | 是 | 是 | number | 否 | 自动清除的时间。 | +| wantAgent | 是 | 是 | WantAgent | 否 | 点击跳转的WantAgent。 | +| extraInfo | 是 | 是 | {[key: string]: any} | 否 | 扩展参数。 | +| color | 是 | 是 | number | 否 | 通知背景颜色。 | +| colorEnabled | 是 | 是 | boolean | 否 | 通知背景颜色是否使能。 | +| isAlertOnce | 是 | 是 | boolean | 否 | 设置是否仅有一次此通知警报。 | +| isStopwatch | 是 | 是 | boolean | 否 | 是否显示已用时间。 | +| isCountDown | 是 | 是 | boolean | 否 | 是否显示倒计时时间。 | +| isFloatingIcon | 是 | 是 | boolean | 否 | 是否显示状态栏图标。 | +| label | 是 | 是 | string | 否 | 通知标签。 | +| badgeIconStyle | 是 | 是 | number | 否 | 通知角标类型。 | +| showDeliveryTime | 是 | 是 | boolean | 否 | 是否显示分发时间。 | +| actionButtons | 是 | 是 | Array\<[NotificationActionButton](#notificationactionbutton)\> | 否 | 通知按钮,最多两个按钮。 | +| smallIcon | 是 | 是 | PixelMap | 否 | 通知小图标。 | +| largeIcon | 是 | 是 | PixelMap | 否 | 通知大图标。 | +| creatorBundleName | 是 | 否 | string | 否 | 创建通知的包名。 | +| creatorUid | 是 | 否 | number | 否 | 创建通知的UID。 | +| creatorPid | 是 | 否 | number | 否 | 创建通知的PID。 | +| hashCode | 是 | 否 | string | 否 | 通知唯一标识。 | +| classification | 是 | 是 | string | 否 | 通知分类。 | +| groupName | 是 | 是 | string | 否 | 组通知名称。 | +| template8+ | 是 | 是 | [NotificationTemplate](#notificationtemplate) | 否 | 通知模板。 | -//wantAgent对象 -var wantAgent; -//getWantAgent回调 -function getWantAgentCallback(err, data) { - console.info("==========================>getWantAgentCallback=======================>"); - if (err.code == 0) { - wantAgent = data; - } else { - console.info('----getWantAgent failed!----'); - } -} -//WantAgentInfo对象 -var wantAgentInfo = { - wants: [ - { - deviceId: "deviceId", - bundleName: "com.neu.setResultOnAbilityResultTest1", - abilityName: "com.example.test.MainAbility", - action: "action1", - entities: ["entity1"], - type: "MIMETYPE", - uri: "key={true,true,false}", - parameters: - { - mykey0: 2222, - mykey1: [1, 2, 3], - mykey2: "[1, 2, 3]", - mykey3: "ssssssssssssssssssssssssss", - mykey4: [false, true, false], - mykey5: ["qqqqq", "wwwwww", "aaaaaaaaaaaaaaaaa"], - mykey6: true, - } - } - ], - operationType: OperationType.START_ABILITIES, - requestCode: 0, - wantAgentFlags:[WantAgentFlags.UPDATE_PRESENT_FLAG] -} -WantAgent.getWantAgent(wantAgentInfo, getWantAgentCallback) +## NotificationSlot -//cancel回调 -function cancelCallback(err, data) { - console.info("==========================>cancelCallback=======================>"); -} -WantAgent.cancel(wantAgent, cancelCallback) -``` +**系统能力**:以下各项对应的系统能力均为SystemCapability.Notification.Notification +| 名称 | 可读 | 可写 | 类型 | 必填 | 描述 | +| -------------------- | ---- | --- | --------------------- | ---- | ------------------------------------------ | +| type | 是 | 是 | [SlotType](#slottype) | 是 | 通道类型。 | +| level | 是 | 是 | number | 否 | 通知级别,不设置则根据通知渠道类型有默认值。 | +| desc | 是 | 是 | string | 否 | 通知渠道描述信息。 | +| badgeFlag | 是 | 是 | boolean | 否 | 是否显示角标。 | +| bypassDnd | 是 | 是 | boolean | 否 | 置是否在系统中绕过免打扰模式。 | +| lockscreenVisibility | 是 | 是 | boolean | 否 | 在锁定屏幕上显示通知的模式。 | +| vibrationEnabled | 是 | 是 | boolean | 否 | 是否可振动。 | +| sound | 是 | 是 | string | 否 | 通知提示音。 | +| lightEnabled | 是 | 是 | boolean | 否 | 是否闪灯。 | +| lightColor | 是 | 是 | number | 否 | 通知灯颜色。 | +| vibrationValues | 是 | 是 | Array\ | 否 | 通知振动样式。 | +## NotificationContent -## WantAgent.cancel +**系统能力**:以下各项对应的系统能力均为SystemCapability.Notification.Notification -cancel(agent: WantAgent): Promise\ +| 名称 | 可读 | 可写 | 类型 | 必填 | 描述 | +| ----------- | ---- | --- | ------------------------------------------------------------ | ---- | ------------------ | +| contentType | 是 | 是 | [ContentType](#contenttype) | 是 | 通知内容类型。 | +| normal | 是 | 是 | [NotificationBasicContent](#notificationbasiccontent) | 否 | 基本类型通知内容。 | +| longText | 是 | 是 | [NotificationLongTextContent](#notificationlongtextcontent) | 否 | 长文本类型通知内容。 | +| multiLine | 是 | 是 | [NotificationMultiLineContent](#notificationmultilinecontent) | 否 | 多行类型通知内容。 | +| picture | 是 | 是 | [NotificationPictureContent](#notificationpicturecontent) | 否 | 图片类型通知内容。 | -取消WantAgent实例(Promise形式)。 -**系统能力**:SystemCapability.Ability.AbilityRuntime.Core -**参数:** +## ContentType -| 名称 | 可读 | 可写 | 类型 | 必填 | 描述 | -| ----- | --- | ---- | --------- | ---- | ------------- | -| agent | 是 | 否 | WantAgent | 是 | WantAgent对象。 | +**系统能力**:以下各项对应的系统能力均为SystemCapability.Notification.Notification -**示例:** +| 名称 | 值 | 说明 | +| --------------------------------- | ----------- | ------------------ | +| NOTIFICATION_CONTENT_BASIC_TEXT | ContentType | 普通类型通知。 | +| NOTIFICATION_CONTENT_LONG_TEXT | ContentType | 长文本类型通知。 | +| NOTIFICATION_CONTENT_PICTURE | ContentType | 图片类型通知。 | +| NOTIFICATION_CONTENT_CONVERSATION | ContentType | 社交类型通知。 | +| NOTIFICATION_CONTENT_MULTILINE | ContentType | 多行文本类型通知。 | -```js -import WantAgent from '@ohos.wantAgent'; -import { OperationType, WantAgentFlags } from '@ohos.wantagent'; -//wantAgent对象 -var wantAgent; -//WantAgentInfo对象 -var wantAgentInfo = { - wants: [ - { - deviceId: "deviceId", - bundleName: "com.neu.setResultOnAbilityResultTest1", - abilityName: "com.example.test.MainAbility", - action: "action1", - entities: ["entity1"], - type: "MIMETYPE", - uri: "key={true,true,false}", - parameters: - { - mykey0: 2222, - mykey1: [1, 2, 3], - mykey2: "[1, 2, 3]", - mykey3: "ssssssssssssssssssssssssss", - mykey4: [false, true, false], - mykey5: ["qqqqq", "wwwwww", "aaaaaaaaaaaaaaaaa"], - mykey6: true, - } - } - ], - operationType: OperationType.START_ABILITIES, - requestCode: 0, - wantAgentFlags:[WantAgentFlags.UPDATE_PRESENT_FLAG] -} +## NotificationBasicContent -WantAgent.getWantAgent(wantAgentInfo).then((data) => { - console.info("==========================>getWantAgentCallback=======================>"); - wantAgent = data; -}); +**系统能力**:以下各项对应的系统能力均为SystemCapability.Notification.Notification -WantAgent.cancel(wantAgent).then((data) => { - console.info("==========================>cancelCallback=======================>"); -}); -``` +| 名称 | 可读 | 可写 | 类型 | 必填 | 描述 | +| -------------- | ---- | ---- | ------ | ---- | ---------------------------------- | +| title | 是 | 是 | string | 是 | 通知标题。 | +| text | 是 | 是 | string | 是 | 通知内容。 | +| additionalText | 是 | 是 | string | 是 | 通知次要内容,是对通知内容的补充。 | -## WantAgent.trigger +## NotificationLongTextContent -trigger(agent: WantAgent, triggerInfo: TriggerInfo, callback?: Callback\): void +**系统能力**:以下各项对应的系统能力均为SystemCapability.Notification.Notification -主动激发WantAgent实例(callback形式)。 +| 名称 | 可读 | 可写 | 类型 | 必填 | 描述 | +| -------------- | ---- | --- | ------ | ---- | -------------------------------- | +| title | 是 | 是 | string | 是 | 通知标题。 | +| text | 是 | 是 | string | 是 | 通知内容。 | +| additionalText | 是 | 是 | string | 是 | 通知次要内容,是对通知内容的补充。 | +| longText | 是 | 是 | string | 是 | 通知的长文本。 | +| briefText | 是 | 是 | string | 是 | 通知概要内容,是对通知内容的总结。 | +| expandedTitle | 是 | 是 | string | 是 | 通知展开时的标题。 | -**系统能力**:SystemCapability.Ability.AbilityRuntime.Core -**参数:** -| 名称 | 可读 | 可写 | 类型 | 必填 | 描述 | -| ----------- | --- | ---- | ----------------------------- | ---- | ------------------------------- | -| agent | 是 | 否 | WantAgent | 是 | WantAgent对象。 | -| triggerInfo | 是 | 否 | TriggerInfo | 是 | TriggerInfo对象。 | -| callback | 是 | 否 | AsyncCallback\ | 是 | 主动激发WantAgent实例的回调方法。 | +## NotificationMultiLineContent -**示例:** +**系统能力**:以下各项对应的系统能力均为SystemCapability.Notification.Notification -```js -import WantAgent from '@ohos.wantAgent'; -import { OperationType, WantAgentFlags } from '@ohos.wantagent'; +| 名称 | 可读 | 可写 | 类型 | 必填 | 描述 | +| -------------- | --- | --- | --------------- | ---- | -------------------------------- | +| title | 是 | 是 | string | 是 | 通知标题。 | +| text | 是 | 是 | string | 是 | 通知内容。 | +| additionalText | 是 | 是 | string | 是 | 通知次要内容,是对通知内容的补充。 | +| briefText | 是 | 是 | string | 是 | 通知概要内容,是对通知内容的总结。 | +| longTitle | 是 | 是 | string | 是 | 通知展开时的标题。 | +| lines | 是 | 是 | Array\ | 是 | 通知的多行文本。 | -//wantAgent对象 -var wantAgent; -//getWantAgent回调 -function getWantAgentCallback(err, data) { - console.info("==========================>getWantAgentCallback=======================>"); - if (err.code == 0) { - wantAgent = data; - } else { - console.info('----getWantAgent failed!----'); - } -} -//WantAgentInfo对象 -var wantAgentInfo = { - wants: [ - { - deviceId: "deviceId", - bundleName: "com.neu.setResultOnAbilityResultTest1", - abilityName: "com.example.test.MainAbility", - action: "action1", - entities: ["entity1"], - type: "MIMETYPE", - uri: "key={true,true,false}", - parameters: - { - mykey0: 2222, - mykey1: [1, 2, 3], - mykey2: "[1, 2, 3]", - mykey3: "ssssssssssssssssssssssssss", - mykey4: [false, true, false], - mykey5: ["qqqqq", "wwwwww", "aaaaaaaaaaaaaaaaa"], - mykey6: true, - } - } - ], - operationType: OperationType.START_ABILITIES, - requestCode: 0, - wantAgentFlags:[WantAgentFlags.UPDATE_PRESENT_FLAG] -} -WantAgent.getWantAgent(wantAgentInfo, getWantAgentCallback) +## NotificationPictureContent -//trigger回调 -function triggerCallback(err, data) { - console.info("==========================>triggerCallback=======================>"); -} +**系统能力**:以下各项对应的系统能力均为SystemCapability.Notification.Notification -var triggerInfo = { - code:0 -} -WantAgent.trigger(wantAgent, triggerInfo, triggerCallback) -``` +| 名称 | 可读 | 可写 | 类型 | 必填 | 描述 | +| -------------- | ---- | --- | -------------- | ---- | -------------------------------- | +| title | 是 | 是 | string | 是 | 通知标题。 | +| text | 是 | 是 | string | 是 | 通知内容。 | +| additionalText | 是 | 是 | string | 是 | 通知次要内容,是对通知内容的补充。 | +| briefText | 是 | 是 | string | 是 | 通知概要内容,是对通知内容的总结。 | +| expandedTitle | 是 | 是 | string | 是 | 通知展开时的标题。 | +| picture | 是 | 是 | image.PixelMap | 是 | 通知的图片内容。 | -## WantAgent.equal +## BundleOption -equal(agent: WantAgent, otherAgent: WantAgent, callback: AsyncCallback\): void +**系统能力**:以下各项对应的系统能力均为SystemCapability.Notification.Notification -判断两个WantAgent实例是否相等(callback形式)。 +| 名称 | 可读 | 可写 | 类型 | 必填 | 描述 | +| ------ | ---- | --- | ------ | ---- | ------ | +| bundle | 是 | 是 | string | 是 | 包名。 | +| uid | 是 | 是 | number | 否 | 用户id。 | -**系统能力**:SystemCapability.Ability.AbilityRuntime.Core -**参数:** -| 名称 | 可读 | 可写 | 类型 | 必填 | 描述 | -| ---------- | --- | ---- | ------------------------ | ---- | --------------------------------------- | -| agent | 是 | 否 | WantAgent | 是 | WantAgent对象。 | -| otherAgent | 是 | 否 | WantAgent | 是 | WantAgent对象。 | -| callback | 是 | 否 | AsyncCallback\ | 是 | 判断两个WantAgent实例是否相等的回调方法。 | +## NotificationKey -**示例:** +**系统能力**:以下各项对应的系统能力均为SystemCapability.Notification.Notification -```js -import WantAgent from '@ohos.wantAgent'; -import { OperationType, WantAgentFlags } from '@ohos.wantagent'; +| 名称 | 可读 | 可写 | 类型 | 必填 | 描述 | +| ----- | ---- | --- | ------ | ---- | -------- | +| id | 是 | 是 | number | 是 | 通知ID。 | +| label | 是 | 是 | string | 否 | 通知标签。< | -//wantAgent对象 -var wantAgent1; -var wantAgent2; -//getWantAgent回调 -function getWantAgentCallback(err, data) { - console.info("==========================>getWantAgentCallback=======================>"); - if (err.code == 0) { - wantAgent1 = data; - wantAgent2 = data; - } else { - console.info('----getWantAgent failed!----'); - } -} -//WantAgentInfo对象 -var wantAgentInfo = { - wants: [ - { - deviceId: "deviceId", - bundleName: "com.neu.setResultOnAbilityResultTest1", - abilityName: "com.example.test.MainAbility", - action: "action1", - entities: ["entity1"], - type: "MIMETYPE", - uri: "key={true,true,false}", - parameters: - { - mykey0: 2222, - mykey1: [1, 2, 3], - mykey2: "[1, 2, 3]", - mykey3: "ssssssssssssssssssssssssss", - mykey4: [false, true, false], - mykey5: ["qqqqq", "wwwwww", "aaaaaaaaaaaaaaaaa"], - mykey6: true, - } - } - ], - operationType: OperationType.START_ABILITIES, - requestCode: 0, - wantAgentFlags:[WantAgentFlags.UPDATE_PRESENT_FLAG] -} -WantAgent.getWantAgent(wantAgentInfo, getWantAgentCallback) +## SlotType -//equal回调 -function equalCallback(err, data) { - console.info("==========================>equalCallback=======================>"); -} -WantAgent.equal(wantAgent1, wantAgent2, equalCallback) -``` +**系统能力**:以下各项对应的系统能力均为SystemCapability.Notification.Notification +| 名称 | 值 | 说明 | +| -------------------- | -------- | ---------- | +| UNKNOWN_TYPE | SlotType | 未知类型。 | +| SOCIAL_COMMUNICATION | SlotType | 社交类型。 | +| SERVICE_INFORMATION | SlotType | 服务类型。 | +| CONTENT_INFORMATION | SlotType | 内容类型。 | +| OTHER_TYPES | SlotType | 其他类型。 | -## WantAgent.equal -equal(agent: WantAgent, otherAgent: WantAgent): Promise\ +## NotificationActionButton -判断两个WantAgent实例是否相等(Promise形式)。 +**系统能力**:以下各项对应的系统能力均为SystemCapability.Notification.Notification -**系统能力**:SystemCapability.Ability.AbilityRuntime.Core +| 名称 | 可读 | 可写 | 类型 | 必填 | 描述 | +| --------- | --- | ---- | ----------------------------------------------- | ---- | ------------------------- | +| title | 是 | 是 | string | 是 | 按钮标题。 | +| wantAgent | 是 | 是 | WantAgent | 是 | 点击按钮时触发的WantAgent。 | +| extras | 是 | 是 | Array\ | 否 | 按钮扩展信息。 | +| userInput | 是 | 是 | [NotificationUserInput](#notificationuserinput) | 否 | 用户输入对象实例。 | -**参数:** -| 名称 | 可读 | 可写 | 类型 | 必填 | 描述 | -| ---------- | --- | ---- | --------- | ---- | ------------- | -| agent | 是 | 否 | WantAgent | 是 | WantAgent对象。 | -| otherAgent | 是 | 否 | WantAgent | 是 | WantAgent对象。 | -**返回值:** +## NotificationUserInput -| 类型 | 说明 | -| ----------------------------------------------------------- | ------------------------------------------------------------ | -| Promise\ | 以Promise形式返回获取判断两个WantAgent实例是否相等的结果。 | - -**示例:** - -```js -import WantAgent from '@ohos.wantAgent'; -import { OperationType, WantAgentFlags } from '@ohos.wantagent'; - -//wantAgent对象 -var wantAgent1; -var wantAgent2; - -//WantAgentInfo对象 -var wantAgentInfo = { - wants: [ - { - deviceId: "deviceId", - bundleName: "com.neu.setResultOnAbilityResultTest1", - abilityName: "com.example.test.MainAbility", - action: "action1", - entities: ["entity1"], - type: "MIMETYPE", - uri: "key={true,true,false}", - parameters: - { - mykey0: 2222, - mykey1: [1, 2, 3], - mykey2: "[1, 2, 3]", - mykey3: "ssssssssssssssssssssssssss", - mykey4: [false, true, false], - mykey5: ["qqqqq", "wwwwww", "aaaaaaaaaaaaaaaaa"], - mykey6: true, - } - } - ], - operationType: OperationType.START_ABILITIES, - requestCode: 0, - wantAgentFlags:[WantAgentFlags.UPDATE_PRESENT_FLAG] -} +**系统能力**:SystemCapability.Notification.Notification -WantAgent.getWantAgent(wantAgentInfo).then((data) => { - console.info("==========================>getWantAgentCallback=======================>"); - wantAgent1 = data; - wantAgent2 = data; -}); +| 名称 | 可读 | 可写 | 类型 | 必填 | 描述 | +| -------- | --- | ---- | ------ | ---- | ----------------------------- | +| inputKey | 是 | 是 | string | 是 | 用户输入时用于标识此输入的key。 | -WantAgent.equal(wantAgent1, wantAgent2).then((data) => { - console.info("==========================>equalCallback=======================>"); -}); -``` +## NotificationSubscribeInfo -## WantAgentInfo +**系统能力**:以下各项对应的系统能力均为SystemCapability.Notification.Notification -**系统能力:**以下各项对应的系统能力均为SystemCapability.Ability.AbilityRuntime.Core +| 名称 | 可读 | 可写 | 类型 | 必填 | 描述 | +| ----------- | --- | ---- | --------------- | ---- | ------------------------------- | +| bundleNames | 是 | 是 | Array\ | 否 | 指定订阅哪些包名的APP发来的通知。 | +| userId | 是 | 是 | number | 否 | 指定订阅哪个用户下发来的通知。 | -| 名称 | 可读 | 可写 | 类型 | 必填 | 描述 | -| -------------- | --- | ---- | ------------------------------- | ---- | ---------------------- | -| wants | 是 | 是 | Array\ | 是 | 将被执行的动作列表。 | -| operationType | 是 | 是 | wantAgent.OperationType | 是 | 动作类型。 | -| requestCode | 是 | 是 | number | 是 | 使用者定义的一个私有值。 | -| wantAgentFlags | 是 | 是 | Array | 否 | 动作执行属性。 | -| extraInfo | 是 | 是 | {[key: string]: any} | 否 | 额外数据。 | +## NotificationTemplate -## WantAgentFlags +模板信息 -**系统能力:**以下各项对应的系统能力均为SystemCapability.Ability.AbilityRuntime.Core +**系统能力**:以下各项对应的系统能力均为SystemCapability.Notification.Notification -| 名称 | 值 | 说明 | -| ------------------- | -------------- | ------------------------------------------------------------ | -| ONE_TIME_FLAG | WantAgentFlags | WantAgent仅能使用一次。 | -| NO_BUILD_FLAG | WantAgentFlags | 如果描述WantAgent对象不存在,则不创建它,直接返回null。 | -| CANCEL_PRESENT_FLAG | WantAgentFlags | 在生成一个新的WantAgent对象前取消已存在的一个WantAgent对象。 | -| UPDATE_PRESENT_FLAG | WantAgentFlags | 使用新的WantAgent的额外数据替换已存在的WantAgent中的额外数据。 | -| CONSTANT_FLAG | WantAgentFlags | WantAgent是不可变的。 | +| 名称 | 参数类型 | 可读 | 可写 | 说明 | +| ---- | ---------------------- | ---- | ---- | ---------- | +| name | string | 是 | 是 | 模板名称。 | +| data | {[key:string]: Object} | 是 | 是 | 模板数据。 | -## OperationType +## ActionResult -**系统能力:**以下各项对应的系统能力均为SystemCapability.Ability.AbilityRuntime.Core +**系统能力**:以下各项对应的系统能力均为SystemCapability.Notification.Notification -| 名称 | 值 | 说明 | -| ----------------- | ------------- | ------------------------- | -| UNKNOWN_TYPE | OperationType | 不识别的类型。 | -| START_ABILITY | OperationType | 开启一个有页面的Ability。 | -| START_ABILITIES | OperationType | 开启多个有页面的Ability。 | -| START_SERVICE | OperationType | 开启一个无页面的ability。 | -| SEND_COMMON_EVENT | OperationType | 发送一个公共事件。 | +| 名称 | 参数类型 | 可读 | 可写 | 说明 | +| ------------ | ---------- | ---- | ---- | -------- | +| bundleName | string | 是 | 是 | 点击通知后重定向应用的包名。 | +| abilityName | string | 是 | 是 | 点击通知后重定向应用的的Ability名称。 | +| uri | string | 是 | 是 | 要重定向到的页面的Uri。 | -## TriggerInfo +## ShowNotificationOptions -**系统能力:**以下各项对应的系统能力均为SystemCapability.Ability.AbilityRuntime.Core +**系统能力**:以下各项对应的系统能力均为SystemCapability.Notification.Notification -| 名称 | 可读 | 可写 | 类型 | 必填 | 描述 | -| ---------- | --- | ---- | -------------------- | ---- | ----------- | -| code | 是 | 是 | number | 是 | result code。 | -| want | 是 | 是 | Want | 否 | Want。 | -| permission | 是 | 是 | string | 否 | 权限定义。 | -| extraInfo | 是 | 是 | {[key: string]: any} | 否 | 额外数据。 | +| 名称 | 参数类型 | 可读 | 可写 | 说明 | +| ------------ | ---------- | ---- | ---- | -------- | +| contentTitle | string | 是 | 是 | 通知的标题。 | +| contentText | string | 是 | 是 | 通知的内容。 | +| clickAction | ActionResult | 是 | 是 | 点击通知后触发的动作。 | diff --git a/zh-cn/application-dev/reference/apis/js-apis-wantAgent.md b/zh-cn/application-dev/reference/apis/js-apis-wantAgent.md new file mode 100644 index 0000000000..7f5e07b895 --- /dev/null +++ b/zh-cn/application-dev/reference/apis/js-apis-wantAgent.md @@ -0,0 +1,979 @@ +# WantAgent模块 + +>**说明:** +> +>本模块首批接口从API version 7开始支持。后续版本的新增接口,采用上角标单独标记接口的起始版本。 + +## 导入模块 + +```js +import WantAgent from '@ohos.wantAgent'; +``` + +## WantAgent.getWantAgent + +getWantAgent(info: WantAgentInfo, callback: AsyncCallback\): void + +创建WantAgent(callback形式)。 + +**系统能力**:SystemCapability.Ability.AbilityRuntime.Core + +**参数:** + +| 名称 | 可读 | 可写 | 类型 | 必填 | 描述 | +| -------- | --- | ---- | -------------------------- | ---- | ----------------------- | +| info | 是 | 否 | WantAgentInfo | 是 | WantAgent信息。 | +| callback | 是 | 否 | AsyncCallback\ | 是 | 创建WantAgent的回调方法。 | + +**示例:** + +```js +import WantAgent from '@ohos.wantAgent'; +import { OperationType, WantAgentFlags } from '@ohos.wantagent'; + +//getWantAgent回调 +function getWantAgentCallback(err, data) { + console.info("==========================>getWantAgentCallback=======================>"); +} +//WantAgentInfo对象 +var wantAgentInfo = { + wants: [ + { + deviceId: "deviceId", + bundleName: "com.neu.setResultOnAbilityResultTest1", + abilityName: "com.example.test.MainAbility", + action: "action1", + entities: ["entity1"], + type: "MIMETYPE", + uri: "key={true,true,false}", + parameters: + { + mykey0: 2222, + mykey1: [1, 2, 3], + mykey2: "[1, 2, 3]", + mykey3: "ssssssssssssssssssssssssss", + mykey4: [false, true, false], + mykey5: ["qqqqq", "wwwwww", "aaaaaaaaaaaaaaaaa"], + mykey6: true, + } + } + ], + operationType: OperationType.START_ABILITIES, + requestCode: 0, + wantAgentFlags:[WantAgentFlags.UPDATE_PRESENT_FLAG] +} + +WantAgent.getWantAgent(wantAgentInfo, getWantAgentCallback) +``` + + + +## WantAgent.getWantAgent + +getWantAgent(info: WantAgentInfo): Promise\ + +创建WantAgent(Promise形式)。 + +**系统能力**:SystemCapability.Ability.AbilityRuntime.Core + +**参数:** + +| 名称 | 可读 | 可写 | 类型 | 必填 | 描述 | +| ---- | --- | ---- | ------------- | ---- | ------------- | +| info | 是 | 否 | WantAgentInfo | 是 | WantAgent信息。 | + +**返回值:** + +| 类型 | 说明 | +| ----------------------------------------------------------- | ------------------------------------------------------------ | +| Promise\ | 以Promise形式返回WantAgent。 | + +**示例:** + +```js +import WantAgent from '@ohos.wantAgent'; +import { OperationType, WantAgentFlags } from '@ohos.wantagent'; + +//WantAgentInfo对象 +var wantAgentInfo = { + wants: [ + { + deviceId: "deviceId", + bundleName: "com.neu.setResultOnAbilityResultTest1", + abilityName: "com.example.test.MainAbility", + action: "action1", + entities: ["entity1"], + type: "MIMETYPE", + uri: "key={true,true,false}", + parameters: + { + mykey0: 2222, + mykey1: [1, 2, 3], + mykey2: "[1, 2, 3]", + mykey3: "ssssssssssssssssssssssssss", + mykey4: [false, true, false], + mykey5: ["qqqqq", "wwwwww", "aaaaaaaaaaaaaaaaa"], + mykey6: true, + } + } + ], + operationType: OperationType.START_ABILITIES, + requestCode: 0, + wantAgentFlags:[WantAgentFlags.UPDATE_PRESENT_FLAG] +} + +WantAgent.getWantAgent(wantAgentInfo).then((data) => { + console.info("==========================>getWantAgentCallback=======================>"); +}); +``` + + + +## WantAgent.getBundleName + +getBundleName(agent: WantAgent, callback: AsyncCallback\): void + +获取WantAgent实例的包名(callback形式)。 + +**系统能力**:SystemCapability.Ability.AbilityRuntime.Core + +**参数:** + +| 名称 | 可读 | 可写 | 类型 | 必填 | 描述 | +| -------- | --- | ---- | ----------------------- | ---- | --------------------------------- | +| agent | 是 | 否 | WantAgent | 是 | WantAgent对象。 | +| callback | 是 | 否 | AsyncCallback\ | 是 | 获取WantAgent实例的包名的回调方法。 | + +**示例:** + +```js +import WantAgent from '@ohos.wantAgent'; +import { OperationType, WantAgentFlags } from '@ohos.wantagent'; + +//wantAgent对象 +var wantAgent; + +//getWantAgent回调 +function getWantAgentCallback(err, data) { + console.info("==========================>getWantAgentCallback=======================>"); + if (err.code == 0) { + wantAgent = data; + } else { + console.info('----getWantAgent failed!----'); + } +} +//WantAgentInfo对象 +var wantAgentInfo = { + wants: [ + { + deviceId: "deviceId", + bundleName: "com.neu.setResultOnAbilityResultTest1", + abilityName: "com.example.test.MainAbility", + action: "action1", + entities: ["entity1"], + type: "MIMETYPE", + uri: "key={true,true,false}", + parameters: + { + mykey0: 2222, + mykey1: [1, 2, 3], + mykey2: "[1, 2, 3]", + mykey3: "ssssssssssssssssssssssssss", + mykey4: [false, true, false], + mykey5: ["qqqqq", "wwwwww", "aaaaaaaaaaaaaaaaa"], + mykey6: true, + } + } + ], + operationType: OperationType.START_ABILITIES, + requestCode: 0, + wantAgentFlags:[WantAgentFlags.UPDATE_PRESENT_FLAG] +} + +WantAgent.getWantAgent(wantAgentInfo, getWantAgentCallback) + +//getBundleName回调 +function getBundleNameCallback(err, data) { + console.info("==========================>getBundleNameCallback=======================>"); +} +WantAgent.getBundleName(wantAgent, getBundleNameCallback) +``` + + + +## WantAgent.getBundleName + +getBundleName(agent: WantAgent): Promise\ + +获取WantAgent实例的包名(Promise形式)。 + +**系统能力**:SystemCapability.Ability.AbilityRuntime.Core + +**参数:** + +| 名称 | 可读 | 可写 | 类型 | 必填 | 描述 | +| ----- | --- | ---- | --------- | ---- | ------------- | +| agent | 是 | 否 | WantAgent | 是 | WantAgent对象。 | + +**返回值:** + +| 类型 | 说明 | +| ----------------------------------------------------------- | ------------------------------------------------------------ | +| Promise\ | 以Promise形式返回获取WantAgent实例的包名。 | + +**示例:** + +```js +import WantAgent from '@ohos.wantAgent'; +import { OperationType, WantAgentFlags } from '@ohos.wantagent'; + +//wantAgent对象 +var wantAgent; + +//WantAgentInfo对象 +var wantAgentInfo = { + wants: [ + { + deviceId: "deviceId", + bundleName: "com.neu.setResultOnAbilityResultTest1", + abilityName: "com.example.test.MainAbility", + action: "action1", + entities: ["entity1"], + type: "MIMETYPE", + uri: "key={true,true,false}", + parameters: + { + mykey0: 2222, + mykey1: [1, 2, 3], + mykey2: "[1, 2, 3]", + mykey3: "ssssssssssssssssssssssssss", + mykey4: [false, true, false], + mykey5: ["qqqqq", "wwwwww", "aaaaaaaaaaaaaaaaa"], + mykey6: true, + } + } + ], + operationType: OperationType.START_ABILITIES, + requestCode: 0, + wantAgentFlags:[WantAgentFlags.UPDATE_PRESENT_FLAG] +} + +WantAgent.getWantAgent(wantAgentInfo).then((data) => { + console.info("==========================>getWantAgentCallback=======================>"); + wantAgent = data; +}); + +WantAgent.getBundleName(wantAgent).then((data) => { + console.info("==========================>getBundleNameCallback=======================>"); +}); +``` + + + +## WantAgent.getUid + +getUid(agent: WantAgent, callback: AsyncCallback\): void + +获取WantAgent实例的用户ID(callback形式)。 + +**系统能力**:SystemCapability.Ability.AbilityRuntime.Core + +**参数:** + +| 名称 | 可读 | 可写 | 类型 | 必填 | 描述 | +| -------- | --- | ---- | ----------------------- | ---- | ----------------------------------- | +| agent | 是 | 否 | WantAgent | 是 | WantAgent对象。 | +| callback | 是 | 否 | AsyncCallback\ | 是 | 获取WantAgent实例的用户ID的回调方法。 | + +**示例:** + +```js +import WantAgent from '@ohos.wantAgent'; +import { OperationType, WantAgentFlags } from '@ohos.wantagent'; + +//wantAgent对象 +var wantAgent; + +//getWantAgent回调 +function getWantAgentCallback(err, data) { + console.info("==========================>getWantAgentCallback=======================>"); + if (err.code == 0) { + wantAgent = data; + } else { + console.info('----getWantAgent failed!----'); + } +} +//WantAgentInfo对象 +var wantAgentInfo = { + wants: [ + { + deviceId: "deviceId", + bundleName: "com.neu.setResultOnAbilityResultTest1", + abilityName: "com.example.test.MainAbility", + action: "action1", + entities: ["entity1"], + type: "MIMETYPE", + uri: "key={true,true,false}", + parameters: + { + mykey0: 2222, + mykey1: [1, 2, 3], + mykey2: "[1, 2, 3]", + mykey3: "ssssssssssssssssssssssssss", + mykey4: [false, true, false], + mykey5: ["qqqqq", "wwwwww", "aaaaaaaaaaaaaaaaa"], + mykey6: true, + } + } + ], + operationType: OperationType.START_ABILITIES, + requestCode: 0, + wantAgentFlags:[WantAgentFlags.UPDATE_PRESENT_FLAG] +} + +WantAgent.getWantAgent(wantAgentInfo, getWantAgentCallback) + +//getUid回调 +function getUidCallback(err, data) { + console.info("==========================>getUidCallback=======================>"); +} +WantAgent.getUid(wantAgent, getUidCallback) +``` + + + +## WantAgent.getUid + +getUid(agent: WantAgent): Promise\ + +获取WantAgent实例的用户ID(Promise形式)。 + +**系统能力**:SystemCapability.Ability.AbilityRuntime.Core + +**参数:** + +| 名称 | 可读 | 可写 | 类型 | 必填 | 描述 | +| ----- | --- | ---- | --------- | ---- | ------------- | +| agent | 是 | 否 | WantAgent | 是 | WantAgent对象。 | + +**返回值:** + +| 类型 | 说明 | +| ----------------------------------------------------------- | ------------------------------------------------------------ | +| Promise\ | 以Promise形式返回获取WantAgent实例的用户ID。 | + +**示例:** + +```js +import WantAgent from '@ohos.wantAgent'; +import { OperationType, WantAgentFlags } from '@ohos.wantagent'; + +//wantAgent对象 +var wantAgent; + +//WantAgentInfo对象 +var wantAgentInfo = { + wants: [ + { + deviceId: "deviceId", + bundleName: "com.neu.setResultOnAbilityResultTest1", + abilityName: "com.example.test.MainAbility", + action: "action1", + entities: ["entity1"], + type: "MIMETYPE", + uri: "key={true,true,false}", + parameters: + { + mykey0: 2222, + mykey1: [1, 2, 3], + mykey2: "[1, 2, 3]", + mykey3: "ssssssssssssssssssssssssss", + mykey4: [false, true, false], + mykey5: ["qqqqq", "wwwwww", "aaaaaaaaaaaaaaaaa"], + mykey6: true, + } + } + ], + operationType: OperationType.START_ABILITIES, + requestCode: 0, + wantAgentFlags:[WantAgentFlags.UPDATE_PRESENT_FLAG] +} + +WantAgent.getWantAgent(wantAgentInfo).then((data) => { + console.info("==========================>getWantAgentCallback=======================>"); + wantAgent = data; +}); + +WantAgent.getUid(wantAgent).then((data) => { + console.info("==========================>getUidCallback=======================>"); +}); +``` + + + +## WantAgent.getWant + +getWant(agent: WantAgent, callback: AsyncCallback\): void + +获取WantAgent对象的want(callback形式)。 + +**系统能力**:SystemCapability.Ability.AbilityRuntime.Core + +**参数:** + +| 名称 | 可读 | 可写 | 类型 | 必填 | 描述 | +| -------- | --- | ---- | --------------------- | ---- | ------------------------------- | +| agent | 是 | 否 | WantAgent | 是 | WantAgent对象。 | +| callback | 是 | 否 | AsyncCallback\ | 是 | 获取WantAgent对象want的回调方法。 | + +**示例:** + +```js +import WantAgent from '@ohos.wantAgent'; +import { OperationType, WantAgentFlags } from '@ohos.wantagent'; + +//wantAgent对象 +var wantAgent; + +//getWantAgent回调 +function getWantAgentCallback(err, data) { + console.info("==========================>getWantAgentCallback=======================>"); + if (err.code == 0) { + wantAgent = data; + } else { + console.info('----getWantAgent failed!----'); + } +} +//WantAgentInfo对象 +var wantAgentInfo = { + wants: [ + { + deviceId: "deviceId", + bundleName: "com.neu.setResultOnAbilityResultTest1", + abilityName: "com.example.test.MainAbility", + action: "action1", + entities: ["entity1"], + type: "MIMETYPE", + uri: "key={true,true,false}", + parameters: + { + mykey0: 2222, + mykey1: [1, 2, 3], + mykey2: "[1, 2, 3]", + mykey3: "ssssssssssssssssssssssssss", + mykey4: [false, true, false], + mykey5: ["qqqqq", "wwwwww", "aaaaaaaaaaaaaaaaa"], + mykey6: true, + } + } + ], + operationType: OperationType.START_ABILITIES, + requestCode: 0, + wantAgentFlags:[WantAgentFlags.UPDATE_PRESENT_FLAG] +} + +WantAgent.getWantAgent(wantAgentInfo, getWantAgentCallback) + +//getWant回调 +function getWantCallback(err, data) { + console.info("==========================>getWantCallback=======================>"); +} +WantAgent.getWant(wantAgent, getWantCallback) +``` + + + +## WantAgent.getWant + +getWant(agent: WantAgent): Promise\ + +获取WantAgent对象的want(Promise形式)。 + +**系统能力**:SystemCapability.Ability.AbilityRuntime.Core + +**参数:** + +| 名称 | 可读 | 可写 | 类型 | 必填 | 描述 | +| ----- | --- | ---- | --------- | ---- | ------------- | +| agent | 是 | 否 | WantAgent | 是 | WantAgent对象。 | + +**返回值:** + +| 类型 | 说明 | +| ----------------------------------------------------------- | ------------------------------------------------------------ | +| Promise\ | 以Promise形式返回获取WantAgent对象的want。 | + +**示例:** + +```js +import WantAgent from '@ohos.wantAgent'; +import { OperationType, WantAgentFlags } from '@ohos.wantagent'; + +//wantAgent对象 +var wantAgent; + +//WantAgentInfo对象 +var wantAgentInfo = { + wants: [ + { + deviceId: "deviceId", + bundleName: "com.neu.setResultOnAbilityResultTest1", + abilityName: "com.example.test.MainAbility", + action: "action1", + entities: ["entity1"], + type: "MIMETYPE", + uri: "key={true,true,false}", + parameters: + { + mykey0: 2222, + mykey1: [1, 2, 3], + mykey2: "[1, 2, 3]", + mykey3: "ssssssssssssssssssssssssss", + mykey4: [false, true, false], + mykey5: ["qqqqq", "wwwwww", "aaaaaaaaaaaaaaaaa"], + mykey6: true, + } + } + ], + operationType: OperationType.START_ABILITIES, + requestCode: 0, + wantAgentFlags:[WantAgentFlags.UPDATE_PRESENT_FLAG] +} + +WantAgent.getWantAgent(wantAgentInfo).then((data) => { + console.info("==========================>getWantAgentCallback=======================>"); + wantAgent = data; +}); + +WantAgent.getWant(wantAgent).then((data) => { + console.info("==========================>getWantCallback=======================>"); +}); +``` + + + +## WantAgent.cancel + +cancel(agent: WantAgent, callback: AsyncCallback\): void + +取消WantAgent实例(callback形式)。 + +**系统能力**:SystemCapability.Ability.AbilityRuntime.Core + +**参数:** + +| 名称 | 可读 | 可写 | 类型 | 必填 | 描述 | +| -------- | --- | ---- | --------------------- | ---- | --------------------------- | +| agent | 是 | 否 | WantAgent | 是 | WantAgent对象。 | +| callback | 是 | 否 | AsyncCallback\ | 是 | 取消WantAgent实例的回调方法。 | + +**示例:** + +```js +import WantAgent from '@ohos.wantAgent'; +import { OperationType, WantAgentFlags } from '@ohos.wantagent'; + +//wantAgent对象 +var wantAgent; + +//getWantAgent回调 +function getWantAgentCallback(err, data) { + console.info("==========================>getWantAgentCallback=======================>"); + if (err.code == 0) { + wantAgent = data; + } else { + console.info('----getWantAgent failed!----'); + } +} +//WantAgentInfo对象 +var wantAgentInfo = { + wants: [ + { + deviceId: "deviceId", + bundleName: "com.neu.setResultOnAbilityResultTest1", + abilityName: "com.example.test.MainAbility", + action: "action1", + entities: ["entity1"], + type: "MIMETYPE", + uri: "key={true,true,false}", + parameters: + { + mykey0: 2222, + mykey1: [1, 2, 3], + mykey2: "[1, 2, 3]", + mykey3: "ssssssssssssssssssssssssss", + mykey4: [false, true, false], + mykey5: ["qqqqq", "wwwwww", "aaaaaaaaaaaaaaaaa"], + mykey6: true, + } + } + ], + operationType: OperationType.START_ABILITIES, + requestCode: 0, + wantAgentFlags:[WantAgentFlags.UPDATE_PRESENT_FLAG] +} + +WantAgent.getWantAgent(wantAgentInfo, getWantAgentCallback) + +//cancel回调 +function cancelCallback(err, data) { + console.info("==========================>cancelCallback=======================>"); +} +WantAgent.cancel(wantAgent, cancelCallback) +``` + + + +## WantAgent.cancel + +cancel(agent: WantAgent): Promise\ + +取消WantAgent实例(Promise形式)。 + +**系统能力**:SystemCapability.Ability.AbilityRuntime.Core + +**参数:** + +| 名称 | 可读 | 可写 | 类型 | 必填 | 描述 | +| ----- | --- | ---- | --------- | ---- | ------------- | +| agent | 是 | 否 | WantAgent | 是 | WantAgent对象。 | + +**示例:** + +```js +import WantAgent from '@ohos.wantAgent'; +import { OperationType, WantAgentFlags } from '@ohos.wantagent'; + +//wantAgent对象 +var wantAgent; + +//WantAgentInfo对象 +var wantAgentInfo = { + wants: [ + { + deviceId: "deviceId", + bundleName: "com.neu.setResultOnAbilityResultTest1", + abilityName: "com.example.test.MainAbility", + action: "action1", + entities: ["entity1"], + type: "MIMETYPE", + uri: "key={true,true,false}", + parameters: + { + mykey0: 2222, + mykey1: [1, 2, 3], + mykey2: "[1, 2, 3]", + mykey3: "ssssssssssssssssssssssssss", + mykey4: [false, true, false], + mykey5: ["qqqqq", "wwwwww", "aaaaaaaaaaaaaaaaa"], + mykey6: true, + } + } + ], + operationType: OperationType.START_ABILITIES, + requestCode: 0, + wantAgentFlags:[WantAgentFlags.UPDATE_PRESENT_FLAG] +} + +WantAgent.getWantAgent(wantAgentInfo).then((data) => { + console.info("==========================>getWantAgentCallback=======================>"); + wantAgent = data; +}); + +WantAgent.cancel(wantAgent).then((data) => { + console.info("==========================>cancelCallback=======================>"); +}); +``` + + + +## WantAgent.trigger + +trigger(agent: WantAgent, triggerInfo: TriggerInfo, callback?: Callback\): void + +主动激发WantAgent实例(callback形式)。 + +**系统能力**:SystemCapability.Ability.AbilityRuntime.Core + +**参数:** + +| 名称 | 可读 | 可写 | 类型 | 必填 | 描述 | +| ----------- | --- | ---- | ----------------------------- | ---- | ------------------------------- | +| agent | 是 | 否 | WantAgent | 是 | WantAgent对象。 | +| triggerInfo | 是 | 否 | TriggerInfo | 是 | TriggerInfo对象。 | +| callback | 是 | 否 | AsyncCallback\ | 是 | 主动激发WantAgent实例的回调方法。 | + +**示例:** + +```js +import WantAgent from '@ohos.wantAgent'; +import { OperationType, WantAgentFlags } from '@ohos.wantagent'; + +//wantAgent对象 +var wantAgent; + +//getWantAgent回调 +function getWantAgentCallback(err, data) { + console.info("==========================>getWantAgentCallback=======================>"); + if (err.code == 0) { + wantAgent = data; + } else { + console.info('----getWantAgent failed!----'); + } +} +//WantAgentInfo对象 +var wantAgentInfo = { + wants: [ + { + deviceId: "deviceId", + bundleName: "com.neu.setResultOnAbilityResultTest1", + abilityName: "com.example.test.MainAbility", + action: "action1", + entities: ["entity1"], + type: "MIMETYPE", + uri: "key={true,true,false}", + parameters: + { + mykey0: 2222, + mykey1: [1, 2, 3], + mykey2: "[1, 2, 3]", + mykey3: "ssssssssssssssssssssssssss", + mykey4: [false, true, false], + mykey5: ["qqqqq", "wwwwww", "aaaaaaaaaaaaaaaaa"], + mykey6: true, + } + } + ], + operationType: OperationType.START_ABILITIES, + requestCode: 0, + wantAgentFlags:[WantAgentFlags.UPDATE_PRESENT_FLAG] +} + +WantAgent.getWantAgent(wantAgentInfo, getWantAgentCallback) + +//trigger回调 +function triggerCallback(err, data) { + console.info("==========================>triggerCallback=======================>"); +} + +var triggerInfo = { + code:0 +} +WantAgent.trigger(wantAgent, triggerInfo, triggerCallback) +``` + + + +## WantAgent.equal + +equal(agent: WantAgent, otherAgent: WantAgent, callback: AsyncCallback\): void + +判断两个WantAgent实例是否相等(callback形式)。 + +**系统能力**:SystemCapability.Ability.AbilityRuntime.Core + +**参数:** + +| 名称 | 可读 | 可写 | 类型 | 必填 | 描述 | +| ---------- | --- | ---- | ------------------------ | ---- | --------------------------------------- | +| agent | 是 | 否 | WantAgent | 是 | WantAgent对象。 | +| otherAgent | 是 | 否 | WantAgent | 是 | WantAgent对象。 | +| callback | 是 | 否 | AsyncCallback\ | 是 | 判断两个WantAgent实例是否相等的回调方法。 | + +**示例:** + +```js +import WantAgent from '@ohos.wantAgent'; +import { OperationType, WantAgentFlags } from '@ohos.wantagent'; + +//wantAgent对象 +var wantAgent1; +var wantAgent2; + +//getWantAgent回调 +function getWantAgentCallback(err, data) { + console.info("==========================>getWantAgentCallback=======================>"); + if (err.code == 0) { + wantAgent1 = data; + wantAgent2 = data; + } else { + console.info('----getWantAgent failed!----'); + } +} +//WantAgentInfo对象 +var wantAgentInfo = { + wants: [ + { + deviceId: "deviceId", + bundleName: "com.neu.setResultOnAbilityResultTest1", + abilityName: "com.example.test.MainAbility", + action: "action1", + entities: ["entity1"], + type: "MIMETYPE", + uri: "key={true,true,false}", + parameters: + { + mykey0: 2222, + mykey1: [1, 2, 3], + mykey2: "[1, 2, 3]", + mykey3: "ssssssssssssssssssssssssss", + mykey4: [false, true, false], + mykey5: ["qqqqq", "wwwwww", "aaaaaaaaaaaaaaaaa"], + mykey6: true, + } + } + ], + operationType: OperationType.START_ABILITIES, + requestCode: 0, + wantAgentFlags:[WantAgentFlags.UPDATE_PRESENT_FLAG] +} + +WantAgent.getWantAgent(wantAgentInfo, getWantAgentCallback) + +//equal回调 +function equalCallback(err, data) { + console.info("==========================>equalCallback=======================>"); +} +WantAgent.equal(wantAgent1, wantAgent2, equalCallback) +``` + + + +## WantAgent.equal + +equal(agent: WantAgent, otherAgent: WantAgent): Promise\ + +判断两个WantAgent实例是否相等(Promise形式)。 + +**系统能力**:SystemCapability.Ability.AbilityRuntime.Core + +**参数:** + +| 名称 | 可读 | 可写 | 类型 | 必填 | 描述 | +| ---------- | --- | ---- | --------- | ---- | ------------- | +| agent | 是 | 否 | WantAgent | 是 | WantAgent对象。 | +| otherAgent | 是 | 否 | WantAgent | 是 | WantAgent对象。 | + +**返回值:** + +| 类型 | 说明 | +| ----------------------------------------------------------- | ------------------------------------------------------------ | +| Promise\ | 以Promise形式返回获取判断两个WantAgent实例是否相等的结果。 | + +**示例:** + +```js +import WantAgent from '@ohos.wantAgent'; +import { OperationType, WantAgentFlags } from '@ohos.wantagent'; + +//wantAgent对象 +var wantAgent1; +var wantAgent2; + +//WantAgentInfo对象 +var wantAgentInfo = { + wants: [ + { + deviceId: "deviceId", + bundleName: "com.neu.setResultOnAbilityResultTest1", + abilityName: "com.example.test.MainAbility", + action: "action1", + entities: ["entity1"], + type: "MIMETYPE", + uri: "key={true,true,false}", + parameters: + { + mykey0: 2222, + mykey1: [1, 2, 3], + mykey2: "[1, 2, 3]", + mykey3: "ssssssssssssssssssssssssss", + mykey4: [false, true, false], + mykey5: ["qqqqq", "wwwwww", "aaaaaaaaaaaaaaaaa"], + mykey6: true, + } + } + ], + operationType: OperationType.START_ABILITIES, + requestCode: 0, + wantAgentFlags:[WantAgentFlags.UPDATE_PRESENT_FLAG] +} + +WantAgent.getWantAgent(wantAgentInfo).then((data) => { + console.info("==========================>getWantAgentCallback=======================>"); + wantAgent1 = data; + wantAgent2 = data; +}); + +WantAgent.equal(wantAgent1, wantAgent2).then((data) => { + console.info("==========================>equalCallback=======================>"); +}); +``` + + + +## WantAgentInfo + +**系统能力**:以下各项对应的系统能力均为SystemCapability.Ability.AbilityRuntime.Core + +| 名称 | 可读 | 可写 | 类型 | 必填 | 描述 | +| -------------- | --- | ---- | ------------------------------- | ---- | ---------------------- | +| wants | 是 | 是 | Array\ | 是 | 将被执行的动作列表。 | +| operationType | 是 | 是 | wantAgent.OperationType | 是 | 动作类型。 | +| requestCode | 是 | 是 | number | 是 | 使用者定义的一个私有值。 | +| wantAgentFlags | 是 | 是 | Array | 否 | 动作执行属性。 | +| extraInfo | 是 | 是 | {[key: string]: any} | 否 | 额外数据。 | + + + +## WantAgentFlags + +**系统能力**:以下各项对应的系统能力均为SystemCapability.Ability.AbilityRuntime.Core + +| 名称 | 值 | 说明 | +| ------------------- | -------------- | ------------------------------------------------------------ | +| ONE_TIME_FLAG | WantAgentFlags | WantAgent仅能使用一次。 | +| NO_BUILD_FLAG | WantAgentFlags | 如果描述WantAgent对象不存在,则不创建它,直接返回null。 | +| CANCEL_PRESENT_FLAG | WantAgentFlags | 在生成一个新的WantAgent对象前取消已存在的一个WantAgent对象。 | +| UPDATE_PRESENT_FLAG | WantAgentFlags | 使用新的WantAgent的额外数据替换已存在的WantAgent中的额外数据。 | +| CONSTANT_FLAG | WantAgentFlags | WantAgent是不可变的。 | + + + +## OperationType + +**系统能力**:以下各项对应的系统能力均为SystemCapability.Ability.AbilityRuntime.Core + +| 名称 | 值 | 说明 | +| ----------------- | ------------- | ------------------------- | +| UNKNOWN_TYPE | OperationType | 不识别的类型。 | +| START_ABILITY | OperationType | 开启一个有页面的Ability。 | +| START_ABILITIES | OperationType | 开启多个有页面的Ability。 | +| START_SERVICE | OperationType | 开启一个无页面的ability。 | +| SEND_COMMON_EVENT | OperationType | 发送一个公共事件。 | + + + +## CompleteData + +**系统能力**:以下各项对应的系统能力均为SystemCapability.Ability.AbilityRuntime.Core + +| 名称 | 可读 | 可写 | 类型 | 必填 | 描述 | +| -------------- | --- | ---- | ------------------------------ | ---- | ---------------------- | +| info | 是 | 是 | WantAgent | 是 | 触发的wantAgent。 | +| want | 是 | 是 | Want | 是 | 存在的被触发的want。 | +| finalCode | 是 | 是 | number | 是 | 触发wantAgent的请求代码。| +| finalData | 是 | 是 | string | 否 | 公共事件收集的最终数据。 | +| extraInfo | 是 | 是 | {[key: string]: any} | 否 | 额外数据。 | + + + +## TriggerInfo + +**系统能力**:以下各项对应的系统能力均为SystemCapability.Ability.AbilityRuntime.Core + +| 名称 | 可读 | 可写 | 类型 | 必填 | 描述 | +| ---------- | --- | ---- | -------------------- | ---- | ----------- | +| code | 是 | 是 | number | 是 | result code。 | +| want | 是 | 是 | Want | 否 | Want。 | +| permission | 是 | 是 | string | 否 | 权限定义。 | +| extraInfo | 是 | 是 | {[key: string]: any} | 否 | 额外数据。 | \ No newline at end of file -- GitLab