如何使用第三方库中的@pura/harmony-utils(V1.3.3)申请授权工具类一

1. 安装依赖

bash 复制代码
ohpm install @pura/harmony-utils

在oh-package.json5中看到以下代码即表示安装成功

​编辑

2. 配置权限

module.json5 文件中声明需要的权限(部分权限需要在文档中心进行审批,审批通过后才能使用):

bash 复制代码
    "requestPermissions": [
      {
      "name": "ohos.permission.INTERNET"
      },
      {
        "name": "ohos.permission.CAMERA",
        "reason": "$string:Webcampermissions",
        "usedScene": {
          "abilities": ["EntryAbility"],
          "when": "always"
        }
      },
      {
        "name": "ohos.permission.MICROPHONE",
        "reason": "$string:Microphonepermissions",
        "usedScene": {
          "abilities": ["EntryAbility"],
          "when": "always"
        }
      },
      {
        "name": "ohos.permission.LOCATION",
        "reason": "$string:Locationpermissions",
        "usedScene": {
          "abilities": ["EntryAbility"],
          "when": "always"
        }
      },
      {
      "name": "ohos.permission.APPROXIMATELY_LOCATION",
      "reason": "$string:locationreson",
      "usedScene": {
        "abilities": ["EntryAbility"]
      }
     },
      {
        "name": "ohos.permission.READ_MEDIA",
        "reason": "$string:ReadMediaFiles",
        "usedScene": {
          "abilities": ["EntryAbility"],
          "when": "always"
        }
      },
      {
        "name": "ohos.permission.READ_CALENDAR",
        "reason": "$string:Calendarpermissions",
        "usedScene": {
          "abilities": ["EntryAbility"],
          "when": "always"
        }
      }
    ],

string.json 文件中:

json 复制代码
    {
      "name": "Webcampermissions",
      "value": "需要摄像头权限进行拍照"
    },{
      "name": "Microphonepermissions",
      "value": "需要麦克风权限进行录音"
    },{
      "name": "Locationpermissions",
      "value": "需要位置权限提供定位服务"
    },{
      "name": "ReadMediaFiles",
      "value": "需要读取媒体文件权限"
    },{
      "name": "Calendarpermissions",
      "value": "需要读取日历权限"
    },{
      "name": "locationreson",
      "value": "获取当前位置"
    }

3. 检查是否授权(以相机为例)

javascript 复制代码
let p: Permissions = 'ohos.permission.CAMERA'; //相机
PermissionUtil.checkPermissions(p).then((result) => {
    ToastUtil.showToast(`检测是否授权,结果:${result}`);
})

4.检查并申请授权(以相机为例)

javascript 复制代码
let p: Permissions = 'ohos.permission.CAMERA'; //相机
PermissionUtil.checkRequestPermissions(p).then((grant) => {
  ToastUtil.showToast(`检测并申请授权,结果:${grant}`);
    if (!grant) {
      WantUtil.toAppSetting(); //拒绝权限,跳转APP设置页面
    }
})

本文档所使用类的源地址链接 entry/src/main/ets/pages/utils/PermissionUtilPage.ets · 桃花镇童长老/harmony-utils - Gitee.com****

本文档所介绍的第三方库源地址链接 OpenHarmony三方库中心仓

​##三方SDK##拍摄美化##

相关推荐
前端南玖6 分钟前
深入Vue3响应式:手写实现reactive与ref
前端·javascript·vue.js
wordbaby26 分钟前
React Router 双重加载器机制:服务端 loader 与客户端 clientLoader 完整解析
前端·react.js
itslife30 分钟前
Fiber 架构
前端·react.js
3Katrina33 分钟前
妈妈再也不用担心我的课设了---Vibe Coding帮你实现期末课设!
前端·后端·设计
hubber33 分钟前
一次 SPA 架构下的性能优化实践
前端
可乐只喝可乐1 小时前
从0到1构建一个Agent智能体
前端·typescript·agent
Muxxi1 小时前
shopify模板开发
前端
Yueyanc1 小时前
LobeHub桌面应用的IPC通信方案解析
前端·javascript
我是若尘2 小时前
利用资源提示关键词优化网页加载速度
前端
moyu842 小时前
跨域问题解析(下):Nginx代理、domain修改与postMessage解决方案
前端