鸿蒙开发(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));
});
相关推荐
猛扇赵四那边好嘴.几秒前
Flutter 框架跨平台鸿蒙开发 - 全国公厕查询:智能定位附近公厕
flutter·华为·harmonyos
血色橄榄枝2 分钟前
01 Flutter for OpenHarmony
flutter·开源·鸿蒙
2501_944424123 分钟前
Flutter for OpenHarmony游戏集合App实战之消消乐下落填充
android·开发语言·flutter·游戏·harmonyos
鸣弦artha40 分钟前
Flutter框架跨平台鸿蒙开发——Container组件基础使用
flutter·华为·harmonyos
小雨青年2 小时前
鸿蒙 HarmonyOS 6 | 系统能力 (04):构建专业级媒体应用 PhotoAccessHelper 与复杂媒体库管理
华为·harmonyos·媒体
摘星编程2 小时前
React Native鸿蒙:TabBar自定义图标样式
react native·react.js·harmonyos
Miguo94well2 小时前
Flutter框架跨平台鸿蒙开发——每日早报APP开发流程
flutter·华为·harmonyos·鸿蒙
小白阿龙2 小时前
鸿蒙+flutter 跨平台开发——回看历史APP的开发流程
flutter·华为·harmonyos
弓.长.3 小时前
小白基础入门 React Native 鸿蒙跨平台开发:PanResponder画板涂鸦(最基础,原生但是不完善)
react native·react.js·harmonyos
HMS Core3 小时前
【FAQ】HarmonyOS SDK 闭源开放能力 — Device Security Kit
华为·harmonyos