HarmonyOS NEXT鸿蒙开发:申请麦克风权限(user_grant权限) 作者:马育民 • 2025-12-11 18:02 • 阅读:10015 # 介绍 申请麦克风权限,步骤如下: 1. 在配置文件中,声明需要麦克风权限 2. 向用户申请授权,有两种方式: - 在 `UIAbility` (即:`EntryAbility.ets`)中向用户申请授权 - 在UI(即:pages页面)中向用户申请授权 # 声明需要麦克风权限 修改 `module.json5` 配置文件,添加下面内容: ``` { "name": "ohos.permission.MICROPHONE", "reason": "$string:microphone_permission_reason", "usedScene": { "when": "inuse", "abilities": ["EntryAbility"] } } ``` 如图: [](https://www.malaoshi.top/upload/0/0/1GW2O6jsGk8Z.png) ### 添加提示消息 修改 `resources/base/element/string.json` 文件,添加下面内容: ``` { "name": "microphone_permission_reason", "value": "需要使用麦克风" } ``` 修改 `resources/en_US/element/string.json` 文件,添加下面内容: ``` { "name": "microphone_permission_reason", "value": "Microphone permission is required" } ``` # 代码 这里使用 [HarmonyOS NEXT鸿蒙开发:申请user_grant权限封装工具](https://www.malaoshi.top/show_1GW2O6eNJjE3.html "HarmonyOS NEXT鸿蒙开发:申请user_grant权限封装工具") 的代码 # 实现方式一:在UIAbility中向用户申请授权 在 `EntryAbility.ets` 文件中进行修改 导包: ``` import {requestAllPermissionsFromUser,requestPermissionFromUser} from '../utils/RequestPermissions' ``` 申请所有权限: ``` // 申请所有权限 requestAllPermissionsFromUser(getContext()) ``` 只申请麦克风权限: ``` // 只申请麦克风权限 requestPermissionFromUser('ohos.permission.MICROPHONE','需要使用麦克风权限才能使用该功能',getContext()) ``` 如下位置: [](https://www.malaoshi.top/upload/0/0/1GW2O11Vaiho.png) # 实现方式二:在UI中向用户申请授权 在 `Index.ets` 文件中进行修改 导包 ``` import {requestAllPermissionsFromUser,requestPermissionFromUser} from '../utils/RequestPermissions' ``` 申请所有权限: ``` // 申请所有权限 requestAllPermissionsFromUser(getContext()) ``` 只申请麦克风权限: ``` // 只申请麦克风权限 requestPermissionFromUser('ohos.permission.MICROPHONE','需要使用麦克风权限才能使用该功能',getContext()) ``` [](https://www.malaoshi.top/upload/0/0/1GW2O6uore9Q.png) 原文出处:http://www.malaoshi.top/show_1GW2O70pkUe7.html