鸿蒙开发(NEXT/API 12)【二次向用户申请授权】程序访问控制

当应用通过[requestPermissionsFromUser()]拉起弹框[请求用户授权]时,用户拒绝授权。应用将无法再次通过requestPermissionsFromUser拉起弹框,需要用户在系统应用"设置"的界面中,手动授予权限。

在"设置"应用中的路径:

  • 路径一:设置 > 隐私和安全 > 权限类型(如麦克风) > 具体应用
  • 路径二:设置 > 应用和元服务 > 某个应用

应用也可以通过调用[requestPermissionOnSetting()],直接拉起权限设置弹框,引导用户授予权限。

以下示例代码以再次拉起弹窗申请ohos.permission.MICROPHONE权限为例。

复制代码
import { abilityAccessCtrl, Context, common } from '@kit.AbilityKit';
import { BusinessError } from '@kit.BasicServicesKit';

let atManager: abilityAccessCtrl.AtManager = abilityAccessCtrl.createAtManager();
let context: Context = getContext(this) as common.UIAbilityContext;
atManager.requestPermissionOnSetting(context, ['ohos.permission.MICROPHONE']).then((data: Array<abilityAccessCtrl.GrantStatus>) => {
  console.info('data:' + JSON.stringify(data));
}).catch((err: BusinessError) => {
  console.error('data:' + JSON.stringify(err));
});
相关推荐
琢磨先生David1 小时前
探索 OpenHarmony 开源硬件的学习路径:从入门到实战的全攻略
嵌入式硬件·开源·鸿蒙
我是小智1 小时前
鸿蒙开发04界面渲染
harmonyos·鸿蒙
槐月杰2 小时前
2025ArkTS基础UI(一)——Column、Row、Text组件
ui·arkts·鸿蒙·鸿蒙系统
survivorsfyh9 小时前
zsh: command not found: hdc - 鸿蒙 HarmonyOS Next
华为·harmonyos·鸿蒙
qq_5537603211 小时前
HarmonyOS:WebView 控制及 H5 原生交互实现
华为·harmonyos·鸿蒙
别说我什么都不会18 小时前
OpenHarmony实战开发之测试适配的HDF驱动
嵌入式·harmonyos·领域驱动设计
Star76819 小时前
鸿蒙系统中实现保存pdf至本地
app·harmonyos
威哥爱编程20 小时前
HarmonyOS NEXT 实现滑动拼图验证码功能
华为·harmonyos·arkts
linpengteng21 小时前
开发 ArkTS 版 HarmonyOS 日志库 —— logger
前端·app·harmonyos
塞尔维亚大汉21 小时前
【鸿蒙南向开发】轻量和小型系统三方库移植指南(一)
操作系统·嵌入式·harmonyos