返回顶部
首页 > 资讯 > 精选 >微信小程序audio组件在ios端无法播放怎么解决
  • 839
分享到

微信小程序audio组件在ios端无法播放怎么解决

2023-06-08 07:06:36 839人浏览 泡泡鱼
摘要

今天小编给大家分享一下微信小程序audio组件在iOS端无法播放怎么解决的相关知识点,内容详细,逻辑清晰,相信大部分人都还太了解这方面的知识,所以分享这篇文章给大家参考一下,希望大家阅读完这篇文章后有所收获,下面我们一起来了解一下吧。解决方

今天小编给大家分享一下微信小程序audio组件在iOS端无法播放怎么解决的相关知识点,内容详细,逻辑清晰,相信大部分人都还太了解这方面的知识,所以分享这篇文章给大家参考一下,希望大家阅读完这篇文章后有所收获,下面我们一起来了解一下吧。

解决方法: 给 audio 组件绑定点击事件,手动触发播放暂停方法。

代码片段:

wxml文件

<!-- 判断是语音通话,有通话记录,通话描述不包含"未接" --><view class="reference"    wx:if="{{itemList.activity_type === "phone" && itemList.activity_reference_id && tool.indexOf(itemList.comment,"未接") === -1 }}">    <!-- 语音播放 -->    <van-button class="ref-btn" wx:if="{{audioResourceMaps[itemList.activity_reference_id] === undefined}}"      loading="{{itemList.activity_reference_id === currentGettingReferenceId}}" icon="play" type="info" plain      data-reference-id="{{itemList.activity_reference_id}}" bindtap="getReference">    </van-button>    <view wx:else class="audio-box">        <!-- 语音播放暂停 -->         <van-button class="ref-btn" wx:if="{{audioResourceMaps[itemList.activity_reference_id]}}"      data-reference-id="{{itemList.activity_reference_id}}"        icon="pause" type="info" plain bindtap="pauseAudio"/>        <!-- 点击没有通话录音 -->       <span wx:else class="no-audio-text">未找到通话录音</span>    </view></view>

wxss文件

.reference {  margin-top: 20rpx;  height: 100%;  padding: 5rpx;  box-sizing: border-box;}.ref-btn {  width: 80rpx;  height: 80rpx;  display: flex;}.ref-btn button {  width: 80rpx;  height: 80rpx;  border-radius: 50%;}

js文件

  data: {    currentGettingReferenceId: null,  //正在播放的音频id    audioResourceMaps: {}, //点击过的音频列表    isPause:false, // 是否暂停  },  lifetimes: {    attached: function () {      // 因为是子组件 所以要在这里获取实例      this.audiocontext = wx.createInnerAudioContext();    },    detached: function () {      // 停止播放      this.stopAudio()      // 在组件实例被从页面节点树移除时执行    },  },  methods: {     // 获取录音    getReference(e) {      let id = e.target.dataset.referenceId      if(id != this.data.currentGettingReferenceId){        this.stopAudio()      }      this.setData({        currentGettingReferenceId:id      })      // 点击获取录音url的接口。 接口请求根据自己的封装来写      WXapi.getResourceUrl(        `/conversation/conversationsession/${id}/`, {          data_type: "all",        }).then(({resource_url}) => {          console.log("音频地址====",resource_url,)        let url = resource_url && resource_url.indexOf("https://") > -1? encodeURI(resource_url) : null        this.data.audioResourceMaps[id] = url;        if(resource_url) this.playAudio(id,url)        this.setData({          audioResourceMaps: this.data.audioResourceMaps        })        console.log("播放过的列表=====",this.data.audioResourceMaps)      }).catch(function (e) {        console.log(e)      })    },    // 暂停    pauseAudio(){      this.setData({        isPause: !this.data.isPause      })      let id = this.data.currentGettingReferenceId      console.log(id,"播放暂停的id")      const innerAudioContext = this.audioContext      if(this.data.isPause){        innerAudioContext.pause()        console.log("暂停播放")      }else{        innerAudioContext.play()        console.log("继续播放")      }    },    // 停止播放    stopAudio(){      const innerAudioContext = this.audioContext      innerAudioContext.stop()      let obj = this.data.audioResourceMaps      for(let item in obj){        delete obj[item]      }      // 停止播放就要把播放列表id对应的音频地址做清空处理      this.setData({        audioResourceMaps: obj,        currentGettingReferenceId:null      })      console.log("停止播放")    },    // 播放    playAudio(id,url) {      const innerAudioContext = this.audioContext      console.log(url, "音频的地址")      if(url){        innerAudioContext.src = url        innerAudioContext.play()        innerAudioContext.onPlay(() => {          console.log("开始播放")        })        innerAudioContext.onTimeUpdate(() => {          console.log(innerAudioContext.duration,"总时长")             console.log(innerAudioContext.currentTime,"当前播放进度")        })        setTimeout(() => {          console.log(innerAudioContext.duration,"总时长")             console.log(innerAudioContext.currentTime,"当前播放进度")        }, 500)        innerAudioContext.onEnded(() => {          let obj = this.data.audioResourceMaps          for(let item in obj){            delete obj[item]          }          this.setData({            audioResourceMaps: obj,            currentGettingReferenceId:null          })          console.log("播放完毕")        })        innerAudioContext.onError((res) => {          console.log(res.errMsg)          console.log(res.errCode)        })      }    }

效果图

微信小程序audio组件在ios端无法播放怎么解决

⚠️微信小程序中使用vant,必须要在.JSON 文件中引用 不然标签不会显示哦

我是在app.json文件引得  全局可用

"usinGComponents": {    "van-button": "@vant/weapp/button/index",    "van-icon": "@vant/weapp/icon/index",  }

以上就是“微信小程序audio组件在ios端无法播放怎么解决”这篇文章的所有内容,感谢各位的阅读!相信大家阅读完这篇文章都有很大的收获,小编每天都会为大家更新不同的知识,如果还想学习更多的知识,请关注编程网精选频道。

--结束END--

本文标题: 微信小程序audio组件在ios端无法播放怎么解决

本文链接: https://lsjlt.com/news/252446.html(转载时请注明来源链接)

有问题或投稿请发送至: 邮箱/279061341@qq.com    QQ/279061341

猜你喜欢
  • 微信小程序audio组件在ios端无法播放怎么解决
    今天小编给大家分享一下微信小程序audio组件在ios端无法播放怎么解决的相关知识点,内容详细,逻辑清晰,相信大部分人都还太了解这方面的知识,所以分享这篇文章给大家参考一下,希望大家阅读完这篇文章后有所收获,下面我们一起来了解一下吧。解决方...
    99+
    2023-06-08
  • 微信小程序audio组件在ios端无法播放怎么办
    小编给大家分享一下微信小程序audio组件在ios端无法播放怎么办,相信大部分人都还不怎么了解,因此分享这篇文章给大家参考一下,希望大家阅读完这篇文章后大有收获,下面让我们一起去了解一下吧!解决方法: 给 audio 组件绑定点击事件,手动...
    99+
    2023-06-20
  • 微信小程序audio组件在ios端无法播放的解决办法
    解决方法: 给 audio 组件绑定点击事件,手动触发播放暂停方法! 代码片段: wxml文件 <!-- 判断是语音通话,有通话记录,通话描述不包含'未接' --> ...
    99+
    2024-04-02
  • 微信小程序媒体组件audio怎么用
    这篇文章主要介绍了微信小程序媒体组件audio怎么用的相关知识,内容详细易懂,操作简单快捷,具有一定借鉴价值,相信大家阅读完这篇微信小程序媒体组件audio怎么用文章都会有所收获,下面我们一起来看看吧。audio音频。属性名类型默认值说明i...
    99+
    2023-06-26
  • 微信小程序之video组件视频播放
    目录1、功能介绍2、video组件2.1、用处2.2、属性3、index.js中的数据部分4、结构布局index.wxml5、样式部分index.wxss6、弹幕实现功能7、获取视频...
    99+
    2024-04-02
  • 微信小程序使用视频播放器video组件
    本文实例为大家分享了微信小程序使用视频播放器video组件的具体代码,供大家参考,具体内容如下 在app.json中配置好页面路由和权限。 1.app.json { "pag...
    99+
    2024-04-02
  • HTML5中audio在手机端和微信端不能自动播放怎么办
    小编给大家分享一下HTML5中audio在手机端和微信端不能自动播放怎么办,希望大家阅读完这篇文章之后都有所收获,下面让我们一起去探讨吧!再做H5页面的时候,发现audio在手机端和微信端添加了autopl...
    99+
    2024-04-02
  • 微信小程序怎么实现播放音频
    这篇文章主要介绍“微信小程序怎么实现播放音频”,在日常操作中,相信很多人在微信小程序怎么实现播放音频问题上存在疑惑,小编查阅了各式资料,整理出简单好用的操作方法,希望对大家解答”微信小程序怎么实现播放音频”的疑惑有所帮助!接下来,请跟着小编...
    99+
    2023-06-19
  • 解决基于uniapp的微信小程序,在iOS端无法预览文件,提示文件已损坏问题
    项目场景: 开发了一个小程序,有预览二进制文件的需求。Android端可以成功预览,但iOS端提示文件已损坏,无法预览文件。 问题描述 微信小程序iOS端预览文件,显示无法预览此文件,文件已损坏。但是...
    99+
    2023-09-10
    微信小程序 uni-app ios
  • 微信小程序怎么实现音乐播放器
    本篇内容介绍了“微信小程序怎么实现音乐播放器”的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希望大家仔细阅读,能够学有所成!   开始构建小程序首页。  第一步,我...
    99+
    2023-06-26
  • 微信小程序怎么制作音乐播放器
    本篇内容介绍了“微信小程序怎么制作音乐播放器”的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希望大家仔细阅读,能够学有所成!  font color="Black&...
    99+
    2023-06-26
  • 微信小程序swiper轮播图组件使用方法详解
    本文实例为大家分享了微信小程序swiper轮播图组件的使用,供大家参考,具体内容如下 在components中新建文件夹swiper components/swiper/swiper...
    99+
    2024-04-02
  • 微信小程序iOS端怎么暂停animated动画
    这篇“微信小程序iOS端怎么暂停animated动画 ”文章的知识点大部分人都不太理解,所以小编给大家总结了以下内容,内容详细,步骤清晰,具有一定的借鉴价值,希望大家阅读完这篇文章能有所收获,下面我们一起来看看这篇“微信小程序iOS端怎么暂...
    99+
    2023-06-26
  • 微信小程序无法全屏显示怎么解决
    如果微信小程序无法全屏显示,可能是因为以下原因:1. 设置了导航栏或者标题栏:在小程序的页面配置文件(app.json)中,可能设置...
    99+
    2023-08-15
    微信小程序
  • 微信小程序图片轮播组件gallery slider怎么用
    这篇文章主要介绍了微信小程序图片轮播组件gallery slider怎么用,具有一定借鉴价值,感兴趣的朋友可以参考下,希望大家阅读完这篇文章之后大有收获,下面让小编带着大家一起了解一下。具体内容如下先上效果...
    99+
    2024-04-02
  • 微信 小程序 在电脑PC端无法加载的解决办法。电脑微信小程序打不开是怎么回事?电脑微信小程序不能打开解决方法教学
    一、电脑微信小程序打不开或者一直在加载的原因? 1、电脑端微信版本未更新 微信版本未及时更新,也会影响小程序的正常打开,可以尝试更新版本。 2、缓存过多 如果电脑缓存文件过多,内存少,也可能导致小程序...
    99+
    2023-10-21
    小程序 微信 微信小程序 打不开 一直加载
  • 微信小程序怎么实现音乐播放控制
    这篇文章主要介绍了微信小程序怎么实现音乐播放控制的相关知识,内容详细易懂,操作简单快捷,具有一定借鉴价值,相信大家阅读完这篇微信小程序怎么实现音乐播放控制文章都会有所收获,下面我们一起来看看吧。基础库 1.2.0 开始支持,低版本需做兼容处...
    99+
    2023-06-26
  • 怎么使用微信小程序实现播放音频
    这篇“怎么使用微信小程序实现播放音频”文章的知识点大部分人都不太理解,所以小编给大家总结了以下内容,内容详细,步骤清晰,具有一定的借鉴价值,希望大家阅读完这篇文章能有所收获,下面我们一起来看看这篇“怎么使用微信小程序实现播放音频”文章吧。w...
    99+
    2023-07-02
  • 微信小程序中怎么集成视频播放器
    要在微信小程序中集成视频播放器,可以使用小程序原生的<video>组件来实现。 首先,在小程序的wxml文件中添加<...
    99+
    2024-04-03
    微信小程序
  • 微信小程序怎么制作组件
    这篇“微信小程序怎么制作组件”文章的知识点大部分人都不太理解,所以小编给大家总结了以下内容,内容详细,步骤清晰,具有一定的借鉴价值,希望大家阅读完这篇文章能有所收获,下面我们一起来看看这篇“微信小程序怎么制作组件”文章吧。  第一种方式,下...
    99+
    2023-06-26
软考高级职称资格查询
编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
  • 官方手机版

  • 微信公众号

  • 商务合作