更新记录

1.0.5(2024-01-24)

授权结果添加allRight属性,表明是否所有申请的权限都授权(boolean);

1.0.4(2024-01-22)

改用回调方式使用

1.0.3(2024-01-22)

更新文档

查看更多

平台兼容性

Vue2 Vue3
App 快应用 微信小程序 支付宝小程序 百度小程序 字节小程序 QQ小程序
HBuilderX 3.6.8,Android:4.4,iOS:不支持,HarmonyNext:不确定 × × × × × ×
钉钉小程序 快手小程序 飞书小程序 京东小程序
× × × ×
H5-Safari Android Browser 微信浏览器(Android) QQ浏览器(Android) Chrome IE Edge Firefox PC-Safari
× × × × × × × × ×

权限请求组件

这是一个用于处理权限请求的组件。它提供了一个简单的接口来请求权限,并处理用户的响应。

配置

请先在项目的manifest.json中配置好应用所需要的权限。

安装

和其它插件一样。

使用

1. 导入组件

在您的代码中导入 requestPermissions 函数:

import requestPermissions from '@/uni_modules/hr-permission';

2. 请求权限

使用 requestPermissions 函数请求所需的权限。您可以传递一个字符串或字符串数组来指定所需的权限:

const permissions = ['android.permission.CAMERA', 'android.permission.READ_EXTERNAL_STORAGE'];

const success = (result) => {
    console.log(result);
}

const fail = (error) => {
    console.log(error);
}

requestPermissions(permissions,success,fail);

3. 处理结果

requestPermissions sucess函数返回一个包含权限请求结果的对象。该对象有以下属性:

  • allRight:授权结果添加allRight属性,表明是否所有申请的权限都授权(boolean);
  • grantedPermissions:已授予的权限列表。
  • deniedPermissions:被拒绝的权限列表。
  • permissionResults:包含每个权限是否被授予的映射(Map<string, boolean>)。
  • permissionActions:对于每个权限,建议的下一步操作。这是一个 Map<string, ActionType> 类型,其中 ActionType 可以是以下几种:
    • 'none':无需进一步操作。这通常意味着权限已被授予。
    • 'requestAgain':建议再次请求权限。这通常发生在用户拒绝了权限请求,但没有选择“不再询问”选项。
    • 'openSetting':建议打开应用设置。这通常用于提示用户手动开启权限,特别是在用户拒绝权限请求并选择了“不再询问”选项的情况下。
    • 'requestFirst':表示这是第一次请求该权限。通常在应用第一次尝试请求权限时使用。 每个权限的 ActionType 反映了对该权限的最佳操作建议,可以帮助您设计更好的用户体验,特别是在处理权限请求的不同结果时。

4. 错误处理

当参数异常时会抛出异常。确保适当处理这些异常。

注意

确保在实际设备上测试此组件,因为权限请求的行为可能因设备和Android版本而异。

隐私、权限声明

1. 本插件需要申请的系统权限列表:

2. 本插件采集的数据、发送的服务器地址、以及数据用途说明:

3. 本插件是否包含广告,如包含需详细说明广告表达方式、展示频率:

暂无用户评论。

使用中有什么不明白的地方,就向插件作者提问吧~ 我要提问