4 回复
可以做,联系QQ:1804945430
录音支持暂停、继续(ios、andorid):https://ext.dcloud.net.cn/plugin?id=5849
承接双端(Android,iOS)原生插件开发,uni-app外包项目开发。
接受已有项目的二次开发、修改功能、修复问题bug等任何开发相关的单
QQ:1559653449
VX:fan-rising
针对您提出的uni-app插件需求——实现app录音功能,以下是一个基于uni-app框架的录音功能实现示例。该示例使用了uni-app提供的uni.getRecorderManager()
API进行录音操作,并展示了如何开始录音、停止录音以及获取录音文件。
首先,确保您的uni-app项目已经正确配置并可以运行。然后,您可以按照以下步骤实现录音功能。
- 页面布局(index.vue):
<template>
<view class="container">
<button @click="startRecording">开始录音</button>
<button @click="stopRecording" :disabled="!isRecording">停止录音</button>
<audio v-if="audioSrc" :src="audioSrc" controls></audio>
</view>
</template>
<script>
export default {
data() {
return {
isRecording: false,
audioSrc: ''
};
},
methods: {
startRecording() {
this.isRecording = true;
const recorderManager = uni.getRecorderManager();
recorderManager.onStart(() => {
console.log('录音开始');
});
recorderManager.onStop((res) => {
console.log('录音停止', res);
this.audioSrc = res.tempFilePath;
this.isRecording = false;
});
recorderManager.onError((err) => {
console.error('录音错误', err);
this.isRecording = false;
});
recorderManager.start({
format: 'mp3'
});
},
stopRecording() {
const recorderManager = uni.getRecorderManager();
recorderManager.stop();
}
}
};
</script>
<style>
.container {
display: flex;
flex-direction: column;
align-items: center;
justify-content: center;
height: 100vh;
}
button {
margin: 10px;
}
</style>
- 功能说明:
- 页面上有两个按钮:“开始录音”和“停止录音”。当点击“开始录音”按钮时,会调用
startRecording
方法开始录音;当点击“停止录音”按钮时,会调用stopRecording
方法停止录音。 - 录音开始后,页面上的“停止录音”按钮会被激活(
disabled
属性为false
)。 - 录音停止后,会获取到录音文件的临时路径(
tempFilePath
),并将其赋值给audioSrc
变量,以便在页面上显示录音文件并播放。
- 注意事项:
- 请确保您的uni-app项目已经配置了必要的权限,如麦克风权限。
- 根据实际需求,您可以对录音文件的格式、质量等进行调整。
- 本示例仅展示了基本的录音功能,您可以根据需要进行扩展和优化。
希望这个示例能够满足您的需求,并帮助您快速实现app录音功能。