本开源工具库专注于鸿蒙应用开发,适配 API12 版本,提供了权限检查、权限申请功等功能。
提供了一套简洁易用的权限申请与管理接口,方便开发者在应用中处理各种权限相关操作。涵盖了如相机、麦克风、存储等常见权限的申请、检查权限状态以及权限被拒绝后的处理逻辑。
安装依赖
ohpm install @nutpi/simple_permission
主要功能
组成 | 类型 | 说明 |
---|---|---|
PermissionManager | class | 封装权限相关的功能 |
checkPermission | method | 检查是否拥有权限 |
requestPermission | method | 申请权限 |
openPermissionSetting | method | 拉起权限设置页面 |
签名
import { abilityAccessCtrl, bundleManager, common, Permissions } from '@kit.AbilityKit';
/**
* `PermissionManager` 类用于管理权限相关的操作。
*/
export class PermissionManager {
/**
* 检查给定的权限列表是否都已被授予。
*
* @param {Permissions[]} permissions - 要检查的权限列表。
* @returns {boolean} 如果所有权限都已被授予,则返回 `true`;否则返回 `false`。
*/
static checkPermission(permissions: Permissions[]): boolean {
}
/**
* 异步请求用户授予给定的权限列表。
*
* @param {Permissions[]} permissions - 要请求的权限列表。
* @returns {Promise<boolean>} 如果成功获取所有请求权限的授权结果且都为成功授权(值为0),则返回 `true`;否则返回 `false`。
*/
static async requestPermission(permissions: Permissions[]): Promise<boolean> {
}
/**
* 异步打开权限设置页面以处理给定权限列表的授权情况。
*
* @param {Permissions[]} permissions - 要处理的权限列表。
* @param {Context} [context] - 可选的上下文信息,如果未提供则尝试获取默认上下文。
* @returns {Promise<boolean>} 如果成功打开权限设置页面并所有权限的授权结果都为 `PERMISSION_GRANTED`,则返回 `true`;否则返回 `false`。
*/
static async openPermissionSetting(permissions: Permissions[], context?: Context) {
}
}
本开源工具库采用 Apache License 2.0[1]许可证,在拷贝和借鉴代码时,请大家务必注明出处。
参考资料
[1] Apache License 2.0: https://gitee.com/link?target=https%3A%2F%2Fwww.apache.org%2Flicenses%2FLICENSE-2.0.html