HarmonyOS 请求通知授权,方法返回有误

请求通知授权,可通过requestEnableNotification的错误码判断用户是否授权。

notificationManager.isNotificationEnabled() 

但是该方法在APP未授权时返回也是true,导致后续操作失败。

HarmonyOS
2天前
浏览
收藏 0
回答 1
待解决
回答 1
按赞同
/
按时间
zbw_apple

请参考以下示例:

import notificationManager from '@ohos.notificationManager';
import Base from '@ohos.base';
import hilog from '@ohos.hilog';
import common from '@ohos.app.ability.common';
const DOMAIN_NUMBER: number = 0xFF00;
@Entry
@Component
struct Page {
  build() {
    Column() {
      Text('点击测试')
        .padding(30)
        .onClick(()=>{
          this.testNotification()
        })
    }
  }

  testNotification(){
    let context = getContext(this) as common.UIAbilityContext;
    notificationManager.isNotificationEnabled().then((data: boolean) => {
      console.info("isNotificationEnabled success, data: " + JSON.stringify(data));
      if(!data){
        notificationManager.requestEnableNotification(context).then(() => {
          hilog.info(DOMAIN_NUMBER, TAG, `[ANS] requestEnableNotification success`);
        }).catch((err : Base.BusinessError) => {
          if(1600004 == err.code){
            console.info(`[ANS] requestEnableNotification refused`);
          } else {
            console.error(`[ANS] requestEnableNotification failed, code is ${err.code}, message is ${err.message}`);
          }
        });
      }
    }).catch((err : Base.BusinessError) => {
      console.error(`isNotificationEnabled fail: ${JSON.stringify(err)}`);
    });
  }
}

指导文档:https://developer.huawei.com/consumer/cn/doc/harmonyos-guides-V5/notification-enable-V5

分享
微博
QQ
微信
回复
2天前
相关问题
HarmonyOS 通知授权弹框无法弹出 -
47浏览 • 1回复 待解决
如何向用户请求授权广告跟踪权限
393浏览 • 1回复 待解决
HarmonyOS http请求返回2300007
767浏览 • 1回复 待解决
HarmonyOS 网络请求返回的JSON
58浏览 • 2回复 待解决
通知栏点击事件监听的方法
447浏览 • 1回复 待解决
华为事件通知接口返回10008错误码
9307浏览 • 2回复 待解决
HarmonyOS 关于http请求返回结果
87浏览 • 1回复 待解决
http请求支持patch方法
2119浏览 • 1回复 待解决
请求广告返回错误码401
2333浏览 • 1回复 待解决
请求广告返回错误码21800003
2296浏览 • 1回复 待解决
真机运行http请求没有返回
4421浏览 • 1回复 待解决
请求成功之后返回SSL is null
871浏览 • 1回复 待解决