如何使用第三方库中的@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##拍摄美化##

相关推荐
kyriewen9 分钟前
CSS Container Queries:彻底告别 @media 写到手软,附 5 个真实布局案例
前端·css·面试
小小小小宇2 小时前
OpenMemory MCP
前端
和平宇宙2 小时前
AI笔记005. hermes-DeepSeek V4 Pro, 128K上下文引发的探索
前端·人工智能·笔记
IT_陈寒2 小时前
Redis持久化这个坑,我爬了一整天才出来
前端·人工智能·后端
naildingding3 小时前
3-ts接口 Interface
前端·typescript
小小前端仔LC3 小时前
Node.js + LangChain + React:搭建个人知识库(六)- “吃什么”项目实战:从700+菜谱入库到Taro H5端JSON渲染
前端·后端
晓13133 小时前
【Cocos Creator 3.x】篇——第二章 入门
前端·javascript·游戏引擎
程序员黑豆3 小时前
AI全栈开发之Java:怎么配置Java环境变量
前端·后端·ai编程
xiaofeichaichai4 小时前
React Hooks
前端·javascript·react.js
问心无愧05134 小时前
ctf show web入门110
前端·笔记