鸿蒙开发(NEXT/API 12)【选择申请权限的方式】程序访问控制

应用在访问数据或者执行操作时,需要评估该行为是否需要应用具备相关的权限。如果确认需要目标权限,则需要在应用安装包中申请目标权限。

每一个权限的权限等级、授权方式不同,申请权限的方式也不同,开发者在申请权限前,需要先根据以下流程判断应用能否申请目标权限。

1

上图的数字标注,请参考以下说明:

  • 标注1:应用APL等级与权限等级的匹配关系

  • 标注2:权限的授权方式分为user_grant(用户授权)和system_grant(系统授权)

    • 如果目标权限是system_grant类型,开发者在进行权限申请后,系统会在安装应用时自动为其进行权限预授予,开发者不需要做其他操作即可使用权限。

    • 在应用需要获取user_grant权限时,请完成以下步骤:

      1. 在配置文件中,声明应用需要请求的权限。
      2. 将应用中需要申请权限的目标对象与对应目标权限进行关联,让用户明确地知道,哪些操作需要用户向应用授予指定的权限。
      3. 运行应用时,在用户触发访问操作目标对象时应该调用接口,精准触发动态授权弹框。该接口的内部会检查当前用户是否已经授权应用所需的权限,如果当前用户尚未授予应用所需的权限,该接口会拉起动态授权弹框,向用户请求授权。
      4. 检查用户的授权结果,确认用户已授权才可以进行下一步操作。
  • 标注3:应用可以通过ACL(访问控制列表)方式申请高级别的权限

应用可根据目标权限的开放范围、授权方式,参考以下操作路径申请对应权限。

应用申请权限的方式

权限类型授权方式操作路径
[所有应用可申请]system_grant[声明权限] > 访问接口
[所有应用可申请]user_grant[声明权限] > [向用户申请授权] > 访问接口
[受限开放权限]system_grant[申请使用受限权限] > [声明权限] > 访问接口
[受限开放权限]user_grant[申请使用受限权限] > [声明权限] > [向用户申请授权] > 访问接口
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值