当前位置:   article > 正文

uni-app实现录音及播放功能_uniapp 播放 录音文件

uniapp 播放 录音文件

实现录音功能

这里就需要用到uni.getRecorderManager()

大部分是直接搬了官网的代码,但是还是需要记录一下修改的部分

下面这段代码运行在微信小程序上、下面这段代码运行在微信小程序上、下面这段代码运行在微信小程序上

下面这段代码最好运行到微信开发者工具后,然后真机调试,因为小程序直接调试录音会报错

这里录音展示是使用了插件luno-audio

需要引入import luchAudio from '@/components/luch-audio/luch-audio.vue'、注册(在components内注册即可)并使用
 

  1. <view class="audioPlay">
  2. <button @tap="startRecord">开始录音</button>
  3. <button @tap="endRecord">停止录音</button>
  4. <button @tap="playVoice">播放录音</button>
  5. </view>
  6. <!--错误部分
  7. <luch-audio
  8. v-if="audioContent"
  9. :src="audioContent"
  10. :play.sync="audioPlayNew"
  11. ></luch-audio> -->
  12. <!-- 20210226修改 -->
  13. <luch-audio
  14. v-if="voicePath"
  15. :src="voicePath"
  16. :play.sync="audioPlayNew"
  17. ></luch-audio>

添加后运行即可。

2021年2月9号更新

更新一个uni-app运行到手机h5的写法

下面这段代码最好真机调试、没有直接在浏览器上调试,录音需要授权

下面这段代码最好真机调试、没有直接在浏览器上调试,录音需要授权

下面这段代码最好真机调试、没有直接在浏览器上调试,录音需要授权

 

  1. <template>
  2. <view class="audioPlay">
  3. <button @click="startRecord">开始录音</button>
  4. <button @tap="endRecord">停止录音</button>
  5. <button @tap="playVoice">播放录音</button>
  6. </view>
  7. </template>
  8. <script>
  9. const recorderManager = uni.getRecorderManager();
  10. const innerAudioContext = uni.createInnerAudioContext();
  11. export default {
  12. data() {
  13. return {
  14. recorderManager: {},
  15. innerAudioContext: {},
  16. text: 'uni-app',
  17. voicePath: ''
  18. }
  19. },
  20. onLoad() {
  21. innerAudioContext.autoplay = true;
  22. console.log("uni.getRecorderManager()",uni.getRecorderManager())
  23. console.log("uni.createInnerAudioContext()",uni.createInnerAudioContext())
  24. let self = this;
  25. recorderManager.onStop(function (res) {
  26. console.log('recorder stop' + JSON.stringify(res));
  27. self.voicePath = res.tempFilePath;
  28. });
  29. },
  30. methods: {
  31. startRecord() {
  32. console.log('开始录音');
  33. recorderManager.start();
  34. },
  35. endRecord() {
  36. console.log('录音结束');
  37. recorderManager.stop();
  38. },
  39. playVoice() {
  40. console.log('播放录音');
  41. if (this.voicePath) {
  42. innerAudioContext.src = this.voicePath;
  43. innerAudioContext.play();
  44. }
  45. }
  46. }
  47. }
  48. </script>

 

声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/码创造者/article/detail/899888
推荐阅读
相关标签
  

闽ICP备14008679号