向用户申请单次授权
基于授权最小化的原则,防止应用获取和滥用用户数据,针对部分应用敏感权限,在弹窗向用户申请授权时,新增“允许本次使用”的授权选项。
开发者在开发应用时,无需额外配置,仍然调用requestPermissionsFromUser()[向用户申请授权],系统会根据该能力[支持的权限],弹出对应的弹窗。
授权弹窗如下图所示:
设置中的选项如下图所示:
路径:设置 > 隐私 > 权限管理 > 应用 > 目标应用 > 位置信息
支持范围
当前仅支持下列权限,当应用向用户申请下列权限时,弹窗将会出现“允许本次使用”的授权选项,设置中修改权限将会出现“每次询问”授权选项。
- 剪切板:["ohos.permission.READ_PASTEBOARD"]
- 模糊位置:["ohos.permission.APPROXIMATELY_LOCATION"]
- 位置:["ohos.permission.LOCATION"]
- 后台位置:["ohos.permission.LOCATION_IN_BACKGROUND"]
- 开发前请熟悉鸿蒙开发指导文档 :[
gitee.com/li-shizhen-skin/harmony-os/blob/master/README.md
]
使用限制
- 当用户点击了“允许本次使用”按钮,将会对应用授予临时的权限。
- 当应用切换至前台、应用展开卡片且处于当前屏幕可见即[卡片可见]或者[设置后台长时任务]的时候(当前仅支持定位导航长时任务),应用的临时权限会一直保持。
其他情况下启动计时器,十秒之后,取消临时权限,想要再次获取,需要重新授予。 - 当应用切了后台,开始十秒计时,如果在计时期间,应用处于卡片可见下或者设置了后台长时任务,计时停止。
HarmonyOS与OpenHarmony鸿蒙文档籽料:mau123789是v直接拿
- 当应用切换至前台、应用展开卡片且处于当前屏幕可见即[卡片可见]或者[设置后台长时任务]的时候(当前仅支持定位导航长时任务),应用的临时权限会一直保持。
直到卡片不可见或者长时任务结束,再次开启十秒计时,计时结束之后,取消临时授权。
如下图样例所示,相机应用处于卡片可见状态:
- 当用户在权限设置中选择了“每次询问”按钮,将会对应用授予模糊位置与位置临时权限,取消临时授权同上。
审核编辑 黄宇
声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。
举报投诉
-
框架
+关注
关注
0文章
398浏览量
17427 -
鸿蒙
+关注
关注
57文章
2306浏览量
42730
发布评论请先 登录
相关推荐
鸿蒙原生应用元服务-访问控制(权限)开发Stage模型向用户申请授权
之前,需要先检查当前应用程序是否已经被授予了权限。可以通过调用checkAccessToken()方法来校验当前是否已经授权。如果已经授权,则可以直接访问目标操作,否则需要进行下一步操作,即向
发表于 04-15 16:44
HarmonyOS NEXT应用元服务开发Intents Kit(意图框架服务)事件推荐接入方案
一、方案概述
当开发者有事件想要通知到用户时,可通过应用/元服务的云侧服务器向智慧分发平台推送事件内容(意图共享)。系统通过智慧决策判断事件发生的条件,在满足条件时,
发表于 11-14 15:26
鸿蒙Ability Kit(程序框架服务)【Ability与ServiceExtensionAbility通信】
本示例展示通过[IDL的方式]和 [@ohos.rpc] 等接口实现了Ability与ServiceExtensionAbility之间的通信。
鸿蒙Ability Kit(程序框架服务)【应用启动框架AppStartup】
`AppStartup`提供了一种更加简单高效的初始化组件的方式,支持异步初始化组件加速应用的启动时间。使用启动框架应用开发者只需要分别为待初始化的组件实现`AppStartup`提供
鸿蒙开发Ability Kit程序框架服务:向用户申请授权
当应用需要访问用户的隐私信息或使用系统能力时,例如获取位置信息、访问日历、使用相机拍摄照片或录制视频等,应该向用户请求授权,这部分权限是user_grant权限。
鸿蒙开发Ability Kit程序访问控制:向用户申请单次授权
受限开放的权限通常是不允许三方应用申请的。当应用在申请权限来访问必要的资源时,发现部分权限的等级比应用APL等级高,开发者可以选择通过ACL方式来解决等级不匹配的问题,从而使用受限权限。
评论