使能通知开关
应用需要开启通知开关才能发送通知。开发者可以在通知发布前调用requestEnableNotification()方法,弹窗让用户选择是否开启使能开关,仅弹窗一次,后续调用该接口不再弹窗。
图1 使能通知开关示意图
-
点击“允许”后,则表示允许应用发送通知。
-
点击“取消”后,再次调用requestEnableNotification()方法,则不再弹窗。此时如需要手动使能通知开关,操作步骤如下所示。
①从设备左上方下拉,进入通知界面 | ②点击右上角“设置”图标,进入通知界面,找到需要打开通知开关的应用 | ③打开“允许通知”开关 |
---|---|---|
接口说明
详细接口见接口文档。
表1 通知开关接口功能介绍
接口名 | 描述 |
---|---|
isNotificationEnabled(bundle: BundleOption, callback: AsyncCallback<boolean>): void | 查询通知开关。 说明: 仅支持系统应用调用。 |
setNotificationEnable(bundle: BundleOption, enable: boolean, callback: AsyncCallback<void>): void | 设置通知开关。例如在“设置 > 应用和服务 > 应用管理”,进入对应应用信息的“通知管理”中设置通知开关状态。 说明: 仅支持系统应用调用。 |
requestEnableNotification(callback: AsyncCallback<void>): void | 请求发送通知的许可,第一次调用弹窗供用户选择允许或禁止。 |
开发步骤
-
导入NotificationManager模块。
import notificationManager from '@ohos.notificationManager';
-
请求发送通知的许可。
notificationManager.requestEnableNotification().then(() => { console.info(`[ANS] requestEnableNotification success`); }).catch((err) => { console.error(`[ANS] requestEnableNotification failed, code is ${err.code}, message is ${err.message}`); });