zoukankan      html  css  js  c++  java
  • 移动端audio使用的一个注意事项

    这几天做移动端的音乐播放,果然是踩坑不断呀!

    其中一个就是,做好的播放功能,在pc上可用,在手机上的壳子浏览器可用,可偏偏在原生浏览器和chrome上不行。

    折腾了好久(主要还是移动端的调试真心不方便呀),最终定位到问题是:

      移动端一个audio对象的第一次播放,必须是一个用户触发的行为。

    至少在我目前4.3的三星s4的原生浏览器和chrome31上是这样的,相信在以后的版本上也会是这样。

    所以对于异步获取播放的资源链接再进行播放的实现,在这两个浏览器上就会失效。

    解决方法:

    既然不能异步,最简单的方法就是换成同步呗。当然,这对于项目来说是不现实的……

    上面提到,这个限制对于同一个audio对象,只在其初次播放时需要用户行为触发,之后就可以随心所欲的操作了。

    所以我所用的方法就是:

    全局使用同一个audio对象,并且在用户第一次点播放的时候,在同步阶段,用一个空的音乐(没有声音,播放时长1s)先进行播放,等获取到异步结果后再进行src的替换就行了。

  • 相关阅读:
    p1217晚餐(简单的dijkstra)
    [USACO07NOV]牛继电器Cow Relays
    [USACO15JAN]草鉴定Grass Cownoisseur
    [SDOI2009]Elaxia的路线
    图论dp [ZJOI2006]物流运输
    数位dp暂退-[ZJOI2010]数字计数
    数位dp进阶:[CQOI2016]手机号码
    数位dp入门-windy数
    借教室
    天天爱跑♂步
  • 原文地址:https://www.cnblogs.com/snadn/p/3463758.html
Copyright © 2011-2022 走看看