XXPermissions icon indicating copy to clipboard operation
XXPermissions copied to clipboard

鸿蒙3.0 系统 权限申请异常

Open XiaoWensc opened this issue 3 years ago • 1 comments

【警告:请务必按照 issue 模板填写,不要抱有侥幸心理,一旦发现 issue 没有按照模板认真填写,一律直接关闭】

问题描述

  • 框架版本【必填】:16.2

  • 问题描述【必填】:在鸿蒙3.0系统中request直接回调了失败onGranted

  • 复现步骤【必填】:

  • 首次申请权限正常,已授权调用以下代码可复现

XXPermissions.with(this).permission(Permission.ACCESS_COARSE_LOCATION)
           .permission(Permission.ACCESS_FINE_LOCATION)
           .permission(Permission.Group.BLUETOOTH)
           .request(object : OnPermissionCallback {
               override fun onGranted(permissions: MutableList<String>?, all: Boolean) {
                   LogUtils.e("onGranted", permissions, all)
               }
               override fun onDenied(permissions: MutableList<String>?, never: Boolean) {
                   LogUtils.d("onDenied", permissions, never)
                   super.onDenied(permissions, never)
               }
           })
  • 是否必现【必填】:是

  • 出现问题的手机信息【必填】:华为P 50 虚拟机 (鸿蒙3.0)

  • 出现问题的安卓版本【必填】:鸿蒙3.0

  • 问题信息的来源渠道【必填】:自己遇到的

请回答

  • 是部分机型还是所有机型都会出现【必答】:鸿蒙3.0必现

  • 框架最新的版本是否存在这个问题【必答】:是

  • 是否已经查阅框架文档还未能解决的【必答】:是

  • issue 是否有人曾提过类似的问题【必答】:否

  • 是否可以通过 Demo 来复现该问题【必答】:是 (demo的申请定位权限可以复现这个问题)

  • 使用原生的权限 API 是否会出现该问题【必答】:没有尝试

其他

  • 提供报错堆栈(如果有报错的话必填,注意不要拿被混淆过的代码堆栈上来)

  • 提供截图或视频(根据需要提供,此项不强制)

  • 提供解决方案(如果已经解决了的话,此项不强制)

XiaoWensc avatar Sep 23 '22 10:09 XiaoWensc

image

小伙子,你使用原生 API 请求看看会不会有同样的问题?

getActivity avatar Sep 25 '22 02:09 getActivity

使用原生API请求正常

XiaoWensc avatar Sep 26 '22 03:09 XiaoWensc

image

getActivity avatar Sep 26 '22 12:09 getActivity

直接回调了失败onGranted

小伙子,你难道不感觉这句话有问题?onGranted 是授权成功的方法,onDenied 是授权失败的方法,你到底想表达成功还是失败?

getActivity avatar Sep 26 '22 12:09 getActivity

使用原生API请求正常

小伙子,我记得鸿蒙只到 Android 10,而蓝牙权限是 Android 12 才有,你直接用系统原生的 API 申请 Permission.Group.BLUETOOTH 能通过?

getActivity avatar Sep 26 '22 12:09 getActivity

超过一个星期没有响应,自动关闭此 issue。

getActivity avatar Oct 04 '22 03:10 getActivity