uni-app iOS录音功能无法使用
uni-app iOS录音功能无法使用
开发环境 | 版本号 | 项目创建方式 |
---|---|---|
Mac | 13.1 | HBuilderX |
### 操作步骤:
app使用uni.getRecorderManager()
### 预期结果:
录音正常使用
### 实际结果:
录音功能无法使用
### bug描述:
ios 使用录音功能提示权限弹窗,之前都可以,今天发现不行。
使用模拟器在manifest里勾选了录音模块了,模拟器使用uni.getRecorderManager()录音API是也提示权限弹窗。
离线打包工程plist配置了录音权限描述了,使用uni.getRecorderManager()录音API还提示权限弹窗。

更多关于uni-app iOS录音功能无法使用的实战教程也可以访问 https://www.itying.com/category-93-b0.html
3 回复
好多谢谢,不好意思是我文档看漏了
根据您描述的情况,iOS录音功能无法使用可能是以下几个原因导致的:
- 权限配置问题:
- 确保info.plist中已添加
NSMicrophoneUsageDescription
权限描述 - 描述文本不能为空,建议填写明确的用途说明
- 代码调用时机问题:
- iOS需要在用户交互事件中触发录音权限请求
- 避免在页面加载时立即调用录音API
- 模拟器限制:
- 部分iOS模拟器版本可能存在录音功能异常
- 建议使用真机测试确认问题
- 检查录音管理器初始化:
const recorderManager = uni.getRecorderManager()
recorderManager.onStart(() => {
console.log('录音开始')
})
recorderManager.onError((res) => {
console.log('录音错误', res)
})
- 权限状态检查:
可以先调用
uni.authorize
检查麦克风权限状态:
uni.authorize({
scope: 'scope.record',
success() {
// 已授权
},
fail() {
// 未授权
}
})