鸿蒙开发(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));
});
相关推荐
FrameNotWork2 小时前
HarmonyOS应用《左右相册》 智感握姿实战:让操作按钮自动“站“到你拇指够得到的地方
华为·harmonyos
wei_shuo2 小时前
鸿蒙平台 Haroopad Markdown 编辑器适配实战:基于 Electron 壳方案的实时预览写作工具
openharmony
hacker7072 小时前
DBeaver 鸿蒙 PC 适配全记录:在 HarmonyOS 桌面端原生重建一个通用数据库工具
数据库·华为·harmonyos
wei_shuo3 小时前
鸿蒙平台 Cypress 前端测试框架适配实战:基于 Electron 壳方案的纯 JavaScript BDD 测试引擎开发
openharmony
wei_shuo4 小时前
鸿蒙平台 ES Agent REST API 测试工具适配实战:基于 Electron 壳方案的跨平台 HTTP 调试客户端开发
openharmony
hacker7074 小时前
DBeaver Community 鸿蒙 PC 适配全记录:在 HarmonyOS PC 上运行原生数据库管理工具
数据库·华为·harmonyos
HwJack205 小时前
用 HML + CSS + JS 三段式写鸿蒙界面
javascript·css·harmonyos
wei_shuo5 小时前
鸿蒙平台 H2 SQL 工作台适配实战:基于 Electron 壳方案的 Navicat 风格数据库管理工具开发
openharmony