【HarmonyOS NEXT】Notification Kit 请求通知授权问题

 【关键字】

Notification Kit / 请求通知授权 / requestEnableNotification()

【问题描述】

目前现状在通知发布前调用requestEnableNotification()方法,弹窗让用户选择是否允许发送通知,仅弹窗一次,后续调用该接口不再弹窗,此时如需要须手动获取通知授权。期望为用户点击取消后,应用后续再次调用requestEnableNotification()方法时能够再次调起弹框进行授权,或者可以跳转到系统设置对应的具体页面。

【解决方案】

系统设计上考虑在弹框时用户点击取消代表用户不允许发送通知,后续继续弹窗会打扰用户。

如果应用期望实现用户点击取消后,再次调用requestEnableNotification时可以拉起弹框或者跳转,需应用自行实现。

参考代码如下(是否是首次点击可以结合本地存储preferences来判断):

notificationManager.isNotificationEnabled().then((data: boolean) => {
console.info("[ANS] isNotificationEnabled success, data: " + JSON.stringify(data));
if(!data){
notificationManager.requestEnableNotification().then(() => {
console.info(`[ANS] requestEnableNotification success`);
}).catch((err:Base.BusinessError) => {
console.error(`[ANS] requestEnableNotificat

你可能感兴趣的:(harmonyos)