diff --git a/en/application-dev/notification/figures/en-us_image_0000001466462305.png b/en/application-dev/notification/figures/en-us_image_0000001466462305.png index 740f4b79a9ee234008cad6cf3616a8f213569476..7db8892ea08d7bc75f87c1f90cc7bc7281a7e07e 100644 Binary files a/en/application-dev/notification/figures/en-us_image_0000001466462305.png and b/en/application-dev/notification/figures/en-us_image_0000001466462305.png differ diff --git a/en/application-dev/notification/notification-enable.md b/en/application-dev/notification/notification-enable.md index 4b0ecd303d8f13b3f7ba4f43364ddd53ffadc1d7..0ab05bec0d4ec44eee8f2c5c43151c2da6da51d3 100644 --- a/en/application-dev/notification/notification-enable.md +++ b/en/application-dev/notification/notification-enable.md @@ -1,17 +1,17 @@ # Enabling Notification -To publish a notification, you must have notification enabled for your application. You can call the [requestEnableNotification()](../reference/apis/js-apis-notificationManager.md#notificationrequestenablenotification) API to display a dialog box prompting the user to enable notification for your application. Note that the dialog box is displayed only when the API is called for the first time. +To publish a notification, you must have notification enabled for your application. You can call the [requestEnableNotification()](../reference/apis/js-apis-notificationManager.md#notificationmanagerrequestenablenotification) API to display a dialog box prompting the user to enable notification for your application. Note that the dialog box is displayed only when the API is called for the first time. - **Figure 1** Dialog box prompting the user to enable notification +**Figure 1** Dialog box prompting the user to enable notification ![en-us_image_0000001416585590](figures/en-us_image_0000001416585590.png) - Touching **allow** enables notification for the application, and touching **ban** keeps notification disabled. -- The dialog box will not be displayed again when [requestEnableNotification()](../reference/apis/js-apis-notificationManager.md#notificationrequestenablenotification) is called later. The user can manually enable notification as follows. - +- The dialog box will not be displayed again when [requestEnableNotification()](../reference/apis/js-apis-notificationManager.md#notificationmanagerrequestenablenotification) is called later. The user can manually enable notification as follows. + | 1. Swipe down from the upper left corner of the device screen to access the notification panel. | 2. Touch the **Settings** icon in the upper right corner. On the notification screen, locate the target application.| 3. Toggle on **Allow notifications**. | | ------------------------------------------------------------ | ------------------------------------------------------------ | ------------------------------------------------------------ | | ![en-us_image_0000001417062434](figures/en-us_image_0000001417062434.png) | ![en-us_image_0000001466462297](figures/en-us_image_0000001466462297.png) | ![en-us_image_0000001466782025](figures/en-us_image_0000001466782025.png) | @@ -19,7 +19,7 @@ To publish a notification, you must have notification enabled for your applicati ## Available APIs -For details about the APIs, see [@ohos.notificationManager](../reference/apis/js-apis-notificationManager.md#notificationrequestenablenotification). +For details about the APIs, see [@ohos.notificationManager](../reference/apis/js-apis-notificationManager.md#notificationmanagerrequestenablenotification). **Table 1** Notification APIs diff --git a/en/application-dev/notification/notification-overview.md b/en/application-dev/notification/notification-overview.md index 6bef8be8fd446e62b3e3da04582b467c9ddc5961..f3dd4149d7b9c77be498f6d02abed67d9e070ab8 100644 --- a/en/application-dev/notification/notification-overview.md +++ b/en/application-dev/notification/notification-overview.md @@ -24,4 +24,5 @@ A notification is generated by the notification sender and sent to the notificat System applications also support notification-related configuration options, such as switches. The system configuration initiates a configuration request and sends the request to the notification subsystem for storage in the memory and database. +**Figure 1** Notification service process ![en-us_image_0000001466582017](figures/en-us_image_0000001466582017.png) diff --git a/en/application-dev/notification/notification-subscription.md b/en/application-dev/notification/notification-subscription.md index 95fe77de7feead97208082c12519523588cd6521..45e75f1f64606cfa89cae2cfae91b89a13faaa5c 100644 --- a/en/application-dev/notification/notification-subscription.md +++ b/en/application-dev/notification/notification-subscription.md @@ -16,19 +16,19 @@ The major APIs for notification subscription are described as follows. For detai | Name | Description| | -------- | -------- | | subscribe(subscriber: NotificationSubscriber, info: NotificationSubscribeInfo, callback: AsyncCallback<void>): void | Subscribes to notifications from a specific application.| -| subscribe(subscriber: NotificationSubscriber, callback: AsyncCallback<void>): void | Subscribes to notifications from all applications. | +| subscribe(subscriber: NotificationSubscriber, callback: AsyncCallback<void>): void | Subscribes to notifications from all applications. | **Table 2** Callbacks for notification subscription | Name | Description| | -------- | -------- | -| onConsume?:(data: SubscribeCallbackData) => void | Callback for receiving notifications. | -| onCancel?:(data: SubscribeCallbackData) => void | Callback for canceling notifications. | -| onUpdate?:(data: NotificationSortingMap) => void | Callback for notification sorting updates. | -| onConnect?:() => void; | Callback for subscription. | -| onDisconnect?:() => void; | Callback for unsubscription. | -| onDestroy?:() => void | Callback for disconnecting from the notification subsystem. | -| onDoNotDisturbDateChange?:(mode: notification.DoNotDisturbDate) => void | Callback for the Do Not Disturb (DNT) time changes.| +| onConsume?:(data: SubscribeCallbackData) => void | Callback for receiving notifications. | +| onCancel?:(data: SubscribeCallbackData) => void | Callback for canceling notifications. | +| onUpdate?:(data: NotificationSortingMap) => void | Callback for notification sorting updates. | +| onConnect?:() => void; | Callback for subscription. | +| onDisconnect?:() => void; | Callback for unsubscription. | +| onDestroy?:() => void | Callback for disconnecting from the notification subsystem. | +| onDoNotDisturbDateChange?:(mode: notification.DoNotDisturbDate) => void | Callback for the Do Not Disturb (DNT) time changes.| | onEnabledNotificationChanged?:(callbackData: EnabledNotificationCallbackData) => void | Callback for notification switch changes. | @@ -46,37 +46,38 @@ The major APIs for notification subscription are described as follows. For detai ```ts let subscriber = { - onConsume: function (data) { - let req = data.request; - console.info('[ANS] onConsume callback req.id: ' + req.id); - }, - onCancel: function (data) { - let req = data.request; - console.info('[ANS] onCancel callback req.id: : ' + req.id); - }, - onUpdate: function (data) { - console.info('[ANS] onUpdate in test'); - }, - onConnect: function () { - console.info('[ANS] onConnect in test'); - }, - onDisconnect: function () { - console.info('[ANS] onDisConnect in test'); - }, - onDestroy: function () { - console.info('[ANS] onDestroy in test'); - }, + onConsume: function (data) { + let req = data.request; + console.info(`onConsume callback. req.id: ${req.id}`); + }, + onCancel: function (data) { + let req = data.request; + console.info(`onCancel callback. req.id: ${req.id}`); + }, + onUpdate: function (data) { + let req = data.request; + console.info(`onUpdate callback. req.id: ${req.id}`); + }, + onConnect: function () { + console.info(`onConnect callback.}`); + }, + onDisconnect: function () { + console.info(`onDisconnect callback.}`); + }, + onDestroy: function () { + console.info(`onDestroy callback.}`); + }, }; ``` - + 4. Initiate notification subscription. ```ts notificationSubscribe.subscribe(subscriber, (err, data) => { // This API uses an asynchronous callback to return the result. if (err) { - console.error(`[ANS] subscribe failed, code is ${err.code}, message is ${err.message}`); + console.error(`Failed to subscribe notification. Code is ${err.code}, message is ${err.message}`); return; } - console.info(`[ANS] subscribeTest success : + ${data}`); + console.info(`Succeeded in subscribing to notification. Data: ${data}`); }); ``` diff --git a/en/application-dev/notification/notification-with-wantagent.md b/en/application-dev/notification/notification-with-wantagent.md index 47275ecabeed338cfb67cff44cb39c325498e0ff..638f53ef2f6f6fce1637468ba4c900496727f23d 100644 --- a/en/application-dev/notification/notification-with-wantagent.md +++ b/en/application-dev/notification/notification-with-wantagent.md @@ -4,7 +4,7 @@ A [WantAgent](../reference/apis/js-apis-app-ability-wantAgent.md) object encapsu Below you can see the process of adding a **WantAgent** object to a notification. The notification publisher requests a **WantAgent** object from the Ability Manager Service (AMS), and then sends a notification carrying the **WantAgent** object to the home screen. When the user touches the notification from the notification panel on the home screen, the **WantAgent** object is triggered. - **Figure 1** Publishing a notification with a WantAgent object +**Figure 1** Publishing a notification with a WantAgent object ![notification-with-wantagent](figures/notification-with-wantagent.png) @@ -15,11 +15,11 @@ For details about the APIs, see [@ohos.app.ability.wantAgent](../reference/apis/ | Name| Description| | -------- | -------- | -|getWantAgent(info: WantAgentInfo, callback: AsyncCallback<WantAgent>): void | Creates a **WantAgent** object.| -|trigger(agent: WantAgent, triggerInfo: TriggerInfo, callback?: Callback<CompleteData>): void | Triggers a **WantAgent** object.| -|cancel(agent: WantAgent, callback: AsyncCallback<void>): void | Cancels a **WantAgent** object.| -|getWant(agent: WantAgent, callback: AsyncCallback<Want>): void | Obtains a **WantAgent** object.| -|equal(agent: WantAgent, otherAgent: WantAgent, callback: AsyncCallback<boolean>): void | Checks whether two **WantAgent** objects are equal.| +| getWantAgent(info: WantAgentInfo, callback: AsyncCallback<WantAgent>): void | Creates a **WantAgent** object.| +| trigger(agent: WantAgent, triggerInfo: TriggerInfo, callback?: Callback<CompleteData>): void | Triggers a **WantAgent** object.| +| cancel(agent: WantAgent, callback: AsyncCallback<void>): void | Cancels a **WantAgent** object.| +| getWant(agent: WantAgent, callback: AsyncCallback<Want>): void | Obtains a **WantAgent** object.| +| equal(agent: WantAgent, otherAgent: WantAgent, callback: AsyncCallback<boolean>): void | Checks whether two **WantAgent** objects are equal.| ## How to Develop @@ -42,20 +42,20 @@ For details about the APIs, see [@ohos.app.ability.wantAgent](../reference/apis/ // Set the action type through operationType of WantAgentInfo. let wantAgentInfo = { - wants: [ - { - deviceId: '', - bundleName: 'com.example.myapplication', - abilityName: 'EntryAbility', - action: '', - entities: [], - uri: '', - parameters: {} - } - ], - operationType: wantAgent.OperationType.START_ABILITY, - requestCode: 0, - wantAgentFlags:[wantAgent.WantAgentFlags.CONSTANT_FLAG] + wants: [ + { + deviceId: '', + bundleName: 'com.example.myapplication', + abilityName: 'EntryAbility', + action: '', + entities: [], + uri: '', + parameters: {} + } + ], + operationType: wantAgent.OperationType.START_ABILITY, + requestCode: 0, + wantAgentFlags:[wantAgent.WantAgentFlags.CONSTANT_FLAG] }; ``` @@ -66,16 +66,16 @@ For details about the APIs, see [@ohos.app.ability.wantAgent](../reference/apis/ // Set the action type through operationType of WantAgentInfo. let wantAgentInfo = { - wants: [ - { - action: 'event_name', // Set the action name. - parameters: {}, - } - ], - operationType: wantAgent.OperationType.SEND_COMMON_EVENT, - requestCode: 0, - wantAgentFlags: [wantAgent.WantAgentFlags.CONSTANT_FLAG], - } + wants: [ + { + action: 'event_name', // Set the action name. + parameters: {}, + } + ], + operationType: wantAgent.OperationType.SEND_COMMON_EVENT, + requestCode: 0, + wantAgentFlags: [wantAgent.WantAgentFlags.CONSTANT_FLAG], + }; ``` 4. Invoke the [getWantAgent()](../reference/apis/js-apis-app-ability-wantAgent.md#wantagentgetwantagent) API to create a **WantAgent** object. @@ -83,12 +83,12 @@ For details about the APIs, see [@ohos.app.ability.wantAgent](../reference/apis/ ```typescript // Create a WantAgent object. wantAgent.getWantAgent(wantAgentInfo, (err, data) => { - if (err) { - console.error('[WantAgent]getWantAgent err=' + JSON.stringify(err)); - return; - } - console.info('[WantAgent]getWantAgent success'); - wantAgentObj = data; + if (err) { + console.error(`Failed to get want agent. Code is ${err.code}, message is ${err.message}`); + return; + } + console.info('Succeeded in geting want agent.'); + wantAgentObj = data; }); ``` @@ -97,25 +97,25 @@ For details about the APIs, see [@ohos.app.ability.wantAgent](../reference/apis/ ```typescript // Create a NotificationRequest object. let notificationRequest: notificationManager.NotificationRequest = { - content: { - contentType: notificationManager.ContentType.NOTIFICATION_CONTENT_BASIC_TEXT, - normal: { - title: 'Test_Title', - text: 'Test_Text', - additionalText: 'Test_AdditionalText', - }, + content: { + contentType: notificationManager.ContentType.NOTIFICATION_CONTENT_BASIC_TEXT, + normal: { + title: 'Test_Title', + text: 'Test_Text', + additionalText: 'Test_AdditionalText', }, - id: 1, - label: 'TEST', - wantAgent: wantAgentObj, + }, + id: 1, + label: 'TEST', + wantAgent: wantAgentObj, } notificationManager.publish(notificationRequest, (err) => { - if (err) { - console.error(`[ANS] publish failed, code is ${err.code}, message is ${err.message}`); - return; - } - console.info(`[ANS] publish success`); + if (err) { + console.error(`Failed to publish notification. Code is ${err.code}, message is ${err.message}`); + return; + } + console.info('Succeeded in publishing notification.'); }); ``` diff --git a/en/application-dev/notification/progress-bar-notification.md b/en/application-dev/notification/progress-bar-notification.md index db7cae812218c2f7b6c363d204baa04dfeeb639f..4f016fefcbb6912fa9a0b998c7b5feb672503eee 100644 --- a/en/application-dev/notification/progress-bar-notification.md +++ b/en/application-dev/notification/progress-bar-notification.md @@ -27,13 +27,14 @@ In the [NotificationTemplate](../reference/apis/js-apis-inner-notification-notif ```ts notificationManager.isSupportTemplate('downloadTemplate').then((data) => { console.info(`[ANS] isSupportTemplate success`); + console.info('Succeeded in supporting download template notification.'); let isSupportTpl: boolean = data; // The value true means that the template of the downloadTemplate type is supported, and false means the opposite. // ... }).catch((err) => { - console.error(`[ANS] isSupportTemplate failed, code is ${err.code}, message is ${err.message}`); + console.error(`Failed to support download template notification. Code is ${err.code}, message is ${err.message}`); }); ``` - + > **NOTE** > > Proceed with the step below only when the specified template is supported. @@ -61,9 +62,9 @@ In the [NotificationTemplate](../reference/apis/js-apis-inner-notification-notif // Publish the notification. notificationManager.publish(notificationRequest, (err) => { if (err) { - console.error(`[ANS] publish failed, code is ${err.code}, message is ${err.message}`); + console.error(`Failed to publish notification. Code is ${err.code}, message is ${err.message}`); return; } - console.info(`[ANS] publish success `); + console.info('Succeeded in publishing notification.'); }); ``` diff --git a/en/application-dev/notification/text-notification.md b/en/application-dev/notification/text-notification.md index 7901a78a4c547ca02caae191b551d27f6cae3e3a..fb1455e0dcdd791db6658935b48e90a6f14a3a14 100644 --- a/en/application-dev/notification/text-notification.md +++ b/en/application-dev/notification/text-notification.md @@ -3,8 +3,7 @@ You can publish basic notifications to send SMS messages, prompt messages, and advertisements. Available content types of basic notifications include normal text, long text, multi-line text, and picture-attached. - - **Table 1** Basic notification content types +**Table 1** Basic notification content types | Type| Description| | -------- | -------- | @@ -13,16 +12,16 @@ You can publish basic notifications to send SMS messages, prompt messages, and a | NOTIFICATION_CONTENT_MULTILINE | Multi-line text notification.| | NOTIFICATION_CONTENT_PICTURE | Picture-attached notification.| +Notifications are displayed in the notification panel, which is the only supported subscriber to notifications. Below you can see two examples of the basic notification. -Notifications are displayed in the notification panel, which is the only system subscriber to notifications. Below you can see two examples of the basic notification. +**Figure 1** Examples of the basic notification -**Figure 1** Examples of the basic notification ![en-us_image_0000001466462305](figures/en-us_image_0000001466462305.png) ## Available APIs -The following table describes the APIs for notification publishing. You specify the notification type by setting the [NotificationRequest](../reference/apis/js-apis-notificationManager.md#notificationrequest) parameter in the APIs. +The following table describes the APIs for notification publishing. You specify the notification type by setting the [NotificationRequest](../reference/apis/js-apis-inner-notification-notificationRequest.md#notificationrequest) parameter in the APIs. | Name| Description| | -------- | -------- | @@ -48,21 +47,21 @@ The following table describes the APIs for notification publishing. You specify let notificationRequest: notificationManager.NotificationRequest = { id: 1, content: { - contentType: notificationManager.ContentType.NOTIFICATION_CONTENT_BASIC_TEXT, // Basic notification - normal: { - title: 'test_title', - text: 'test_text', - additionalText: 'test_additionalText', - } + contentType: notificationManager.ContentType.NOTIFICATION_CONTENT_BASIC_TEXT, // Basic notification + normal: { + title: 'test_title', + text: 'test_text', + additionalText: 'test_additionalText', + } } - } + }; notificationManager.publish(notificationRequest, (err) => { - if (err) { - console.error(`[ANS] publish failed, code is ${err.code}, message is ${err.message}`); - return; - } - console.info(`[ANS] publish success.`); + if (err) { + console.error(`Failed to publish notification. Code is ${err.code}, message is ${err.message}`); + return; + } + console.info('Succeeded in publishing notification.'); }); ``` @@ -74,25 +73,25 @@ The following table describes the APIs for notification publishing. You specify let notificationRequest: notificationManager.NotificationRequest = { id: 1, content: { - contentType: notificationManager.ContentType.NOTIFICATION_CONTENT_LONG_TEXT, // Long-text notification - longText: { - title: 'test_title', - text: 'test_text', - additionalText: 'test_additionalText', - longText: 'test_longText', - briefText: 'test_briefText', - expandedTitle: 'test_expandedTitle', - } + contentType: notificationManager.ContentType.NOTIFICATION_CONTENT_LONG_TEXT, // Long-text notification + longText: { + title: 'test_title', + text: 'test_text', + additionalText: 'test_additionalText', + longText: 'test_longText', + briefText: 'test_briefText', + expandedTitle: 'test_expandedTitle', + } } - } + }; // Publish the notification. notificationManager.publish(notificationRequest, (err) => { - if (err) { - console.error(`[ANS] publish failed, code is ${err.code}, message is ${err.message}`); - return; - } - console.info(`[ANS] publish success.`); + if (err) { + console.error(`Failed to publish notification. Code is ${err.code}, message is ${err.message}`); + return; + } + console.info('Succeeded in publishing notification.'); }); ``` @@ -104,24 +103,24 @@ The following table describes the APIs for notification publishing. You specify let notificationRequest: notificationManager.NotificationRequest = { id: 1, content: { - contentType: notificationManager.ContentType.NOTIFICATION_CONTENT_MULTILINE, // Multi-line text notification - multiLine: { - title: 'test_title', - text: 'test_text', - briefText: 'test_briefText', - longTitle: 'test_longTitle', - lines: ['line_01', 'line_02', 'line_03', 'line_04'], - } + contentType: notificationManager.ContentType.NOTIFICATION_CONTENT_MULTILINE, // Multi-line text notification + multiLine: { + title: 'test_title', + text: 'test_text', + briefText: 'test_briefText', + longTitle: 'test_longTitle', + lines: ['line_01', 'line_02', 'line_03', 'line_04'], + } } - } + }; // Publish the notification. notificationManager.publish(notificationRequest, (err) => { if (err) { - console.error(`[ANS] publish failed, code is ${err.code}, message is ${err.message}`); - return; + console.error(`Failed to publish notification. Code is ${err.code}, message is ${err.message}`); + return; } - console.info(`[ANS] publish success`); + console.info('Succeeded in publishing notification.'); }); ``` @@ -132,27 +131,27 @@ The following table describes the APIs for notification publishing. You specify ```ts let imagePixelMap: PixelMap = undefined; // Obtain the PixelMap information. let notificationRequest: notificationManager.NotificationRequest = { - id: 1, - content: { - contentType: notificationManager.ContentType.NOTIFICATION_CONTENT_PICTURE, - picture: { - title: 'test_title', - text: 'test_text', - additionalText: 'test_additionalText', - briefText: 'test_briefText', - expandedTitle: 'test_expandedTitle', - picture: imagePixelMap - } + id: 1, + content: { + contentType: notificationManager.ContentType.NOTIFICATION_CONTENT_PICTURE, + picture: { + title: 'test_title', + text: 'test_text', + additionalText: 'test_additionalText', + briefText: 'test_briefText', + expandedTitle: 'test_expandedTitle', + picture: imagePixelMap } - } + } + }; // Publish the notification. notificationManager.publish(notificationRequest, (err) => { - if (err) { - console.error(`[ANS] publish failed, code is ${err.code}, message is ${err.message}`); - return; - } - console.info(`[ANS] publish success.`); + if (err) { + console.error(`Failed to publish notification. Code is ${err.code}, message is ${err.message}`); + return; + } + console.info('Succeeded in publishing notification.'); }); ```