当应用通过requestPermissionsFromUser()拉起弹框请求用户授权时,用户拒绝授权。应用将无法再次通过requestPermissionsFromUser()拉起弹框,需要用户在系统应用“设置”的界面中,手动授予权限。
在“设置”应用中的路径:
应用也可以通过调用requestPermissionOnSetting(),直接拉起权限设置弹框,引导用户授予权限。
效果展示:
以下示例代码以再次拉起弹窗申请ohos.permission.APPROXIMATELY_LOCATION权限为例。
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.APPROXIMATELY_LOCATION']).then((data: Array<abilityAccessCtrl.GrantStatus>) => { console.info('data:' + JSON.stringify(data)); }).catch((err: BusinessError) => { console.error('data:' + JSON.stringify(err)); });