syczuan
syczuan
  • 发布:2023-08-21 17:30
  • 更新:2025-09-17 15:12
  • 阅读:13971

解决安卓targetSdkVersion升级为33导致通知权限无法打开问题

分类:uni-app

安卓从13开始,对通知权限加入了POST_NOTIFICATIONS权限,需要动态申请才可以发送通知, 安卓targetSdkVersion升级为33后,如果不添加权限,打开设置时通知开关是禁用状态,以下是解决步骤

1.manifest.json源码中添加权限"<uses-permission android:name=\"android.permission.POST_NOTIFICATIONS\"/>",然后重新打包自定义基座,如图所示

2.在需要使用通知的地方执行以下函数,用于请求通知权限,通知权限一般最多弹出两次,两次后用户还没有同意的话再次请求则不会弹出提示,需要根据回调判断是否永久拒绝,跳转到通知设置

    function requestPermission() {  
      const Build = plus.android.importClass("android.os.Build");  
      if (Build.VERSION.SDK_INT >= 33) {  
        plus.android.requestPermissions(  
          ["android.permission.POST_NOTIFICATIONS"],  
          (resultObj) => {  
            console.log(resultObj);  
          },  
          (error) => {  
            console.log("申请权限错误:" + error.code + " = " + error.message);  
          }  
        );  
      }  
    },
2 关注 分享
FE_liyangyang BoredApe

要回复文章请先登录注册

y***@gmail.com

y***@gmail.com

感谢提醒
2023-08-28 11:39