uni-app recorderManager录音无效
uni-app recorderManager录音无效
示例代码:
recorderManager.start({ format:“mp3” });
## 操作步骤:
startRecord() { //开始录音
recorderManager.start({
format:"mp3"
});
},
预期结果:
startRecord() { //开始录音 recorderManager.start({ format:“mp3” }); },
## 实际结果:
startRecord() { //开始录音
recorderManager.start({
format:"mp3"
});
},
bug描述:
recorderManager在新版框架 无法使用 有授权提示 有时会闪退
| 信息类别 | 信息内容 |
|--------------|------------------|
| 产品分类 | uniapp/App |
| PC开发环境 | Windows |
| PC版本号 | 10 |
| HBuilderX类型| 正式 |
| HBuilderX版本| 3.2.8 |
| 手机系统 | Android |
| 手机版本号 | Android 11 |
| 手机厂商 | OPPO |
| 手机机型 | r11 |
| 页面类型 | vue |
| 打包方式 | 云端 |
| 项目创建方式 | HBuilderX |
更多关于uni-app recorderManager录音无效的实战教程也可以访问 https://www.itying.com/category-93-b0.html
import App from ‘./App’
import uView from “./uview-ui”
Vue.use(uView)
//全局配置
import _config from ‘@/common/config’
Vue.prototype.$config = _config;
import md5Libs from “uview-ui/libs/function/md5”;
Vue.prototype.md5Libs = md5Libs;
//多语言
// 引入语言包,注意路径
import Chinese from ‘@/common/locales/zh.js’;
import English from ‘@/common/locales/en.js’;
import Thai from ‘@/common/locales/th.js’;
// 引入并使用vue-i18n
import VueI18n from ‘vue-i18n’
Vue.use(VueI18n)
// 构造i18n对象
const i18n = new VueI18n({
// 默认语言,这里的local属性,对应message中的zh、en、th属性
locale: ‘en’,
// 引入语言文件
messages: {
// 要标识这里的语言属性,如:this.$i18n.locale = zh|en|th|xxx
‘zh’: Chinese, // 这里为上面通过import引入的语言包
‘en’: English,
‘th’: Thai,
}
})
// #ifndef VUE3
import Vue from ‘vue’
Vue.config.productionTip = false
App.mpType = ‘app’
const app = new Vue({
i18n,// 记得在这添加i18n
…App
})
// http拦截器,此为需要加入的内容,如果不是写在common目录,请自行修改引入路径
import httpInterceptor from ‘@/common/http.interceptor.js’
// 这里需要写在最后,是为了等Vue创建对象完成,引入"app"对象(也即页面的"this"实例)
Vue.use(httpInterceptor, app)
app.$mount()
// #endif
// #ifdef VUE3
import {
createSSRApp
} from ‘vue’
export function createApp() {
const app = createSSRApp(App)
return {
app
}
}
// #endif
更多关于uni-app recorderManager录音无效的实战教程也可以访问 https://www.itying.com/category-93-b0.html
【bug优先处理规则】https://ask.dcloud.net.cn/article/38139
根据你提供的信息,recorderManager在Android 11设备上出现授权提示和闪退问题,这通常与Android系统的权限策略变更有关。以下是关键排查点:
- Android 11权限适配:Android 11引入了分区存储和权限策略调整。确保在
manifest.json中正确配置录音权限:
{
"app-plus": {
"distribute": {
"android": {
"permissions": [
"<uses-permission android:name=\"android.permission.RECORD_AUDIO\"/>"
]
}
}
}
}
- 动态权限请求:在调用
recorderManager.start()前,必须先通过uni.authorize或uni.getSetting获取录音权限授权。示例:
uni.getSetting({
success(res) {
if (!res.authSetting['scope.record']) {
uni.authorize({
scope: 'scope.record',
success() {
recorderManager.start({ format: "mp3" });
}
});
} else {
recorderManager.start({ format: "mp3" });
}
}
});

