动态权限申请被系统拒绝
已经静态声明了权限,动态申请时用户点击"允许",但还是返回失败
let atManager = abilityAccessCtrl.createAtManager()
atManager.requestPermissionsFromUser(this.context,
['ohos.permission.CAMERA'])
.then((result) => {
// result.authResults[0] = -1 //
})
您需要先 登录 才能评论/回答
全部评论(2)
您好,这边根据官方指南申请相机开发的权限进行权限申请,是可以进行权限授权的,并未复现您的问题,是否方便提供一个完整工程Demo方便我们复现分析问题。
您也可以参考官方示例代码:基于CameraKit通过AVRecorder录像,示例工程中也有完整的相机权限申请流程。
2026-02-06 16:16:54
大概率是两个原因,第一,你忘了写“理由”:在 config.json 里,光写权限名没用。摄像头这种权限,必须在同一声明里加一句 "reason" 来解释用途,比如“用于拍摄照片”。少了这个系统直接拒绝。第二,用的“上下文”不对:this.context 如果是从页面(Page)里拿的,可能无效。必须用 UIAbility 里的 context。在页面里,通常用 getContext(this) 来获取正确的。
2026-02-06 10:03:29
