1、在系统设置修改了应用权限,应用能否监听到权限变化
A:在系统设置修改了应用权限,三方应用无法监听到权限变化。
2、应用申请LOCATION位置信息权限为什么没有弹窗
A:可能是未申请ohos.permission.LOCATION权限。开发应用时,需要先申请权限ohos.permission.APPROXIMATELY_LOCATION,才可申请位置信息。
3、向用户申请授予权限但被用户拒绝后,如何处理才能避免应用二次进入时崩溃
A:如下
-
应用在调用受权限保护的接口前,需要先校验应用是否已经获取该权限。如果校验结果显示,应用已经获取了该权限,那么应用可以直接访问该目标接口,否则,应用需要通过动态弹框先申请用户授权,并根据授权结果进行相应处理。
-
如果用户拒绝授予某个权限时,需要确保与此权限无关的其他业务功能能正常使用,不能影响应用的正常注册或登录。
-
当用户主动触发使用此业务功能或为实现业务功能所必须时,应用程序可通过界面内文字引导,让用户主动到“系统设置”中授权。
4、module.json5配置文件中extensionAbilities和requestPermissions的权限声明有何区别
A:如下
-
requestPermissions:标识当前应用运行时需向系统申请的权限集合,应用申请的权限只有在此处配置的才会生效。
-
extensionAbilities.permissions:标识当前ExtensionAbility组件自定义的权限信息,表示当其他应用访问该ExtensionAbility时,需要申请相应的权限信息,仅做权限校验使用。
5、是否支持动态授权
A:根据授权方式的不同,权限类型分为系统授权和用户授权。
-
系统授权类的权限会在用户安装应用时,自动把相应权限授予给应用,无法动态授权。
-
用户授权类权限需要在应用动态运行时,通过发送弹窗的方式请求用户授权,可实现动态授权。
6、Asset Store是否会被其他应用获取,是否会出现跨设备同步的情况
A:如下
-
不会被其他应用获取,关键资产存储服务当前未实现应用共享数据能力,仅写入数据的业务可以访问数据。
-
如果开发者不希望跨设备同步数据,需要在add时设置关键资产的SyncType属性为never。
7、权限库中的权限申明原因是否可以被替换
A:可以替换,如果引用的地方重新定义了权限申明原因,引用库里面的文字就会覆盖掉权限库里面的文字。
更多详情查看:文档中心