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

2025-06-20 17:16:57
116次阅读
0个评论

 1. 安装依赖

ohpm install @pura/harmony-utils

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

2b658b718af04b58ace3e732b62c74a7.png

2. 配置权限

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

    "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 文件中: 

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

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

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

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

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##拍摄美化##

收藏00

登录 后评论。没有帐号? 注册 一个。