微信小程序开发的坑
小程序开发
浏览:501 次

最近,我们正在做微信小程序、知识付费,需要播放背景音频。微信6.6.5版
在iOS上播放没有问题,但不能在Android上随机播放?已经排除了在互联网上不存在所有权价值转移的可能性。
解决方案:后来发现播放url中还有一个“/”。在这种情况下,iOS播放正常,但Android会出现随机问题。
解决了上面1中的问题,发现在某一课程下播放音频时,总是无法播放?
解决方案:小程序代码本身被排除,因为所有音频播放都是相同的功能。后来,我抓到了数据包,发现在播放此音频时,我调用了服务器音频接口两次,这超出了我的理解。我仔细检查了请求的头信息,发现有时请求有一个“range”参数,因此此时需要特殊处理。因为它正在使用
///方法I
var readstream=fs.createReadStream(文件路径);
readstream.pipe(res);
在此表格中,需要“范围”参数来计算起始位置:

///方法II
var流=fs。createReadStream(文件路径{
“开始”:range.start,
“结束”:range.end
});
流管(res);
如果你不计算,你仍然会使用方法1,这将莫名其妙地不可能玩。
这可能是因为小程序有缓存。如果小程序发现某些音频已下载,它将使用“range”参数。
MP3格式导致iOS手机无法播放?

有些MP3格式有封面,无法在iOS上播放,但可以在Android上播放。红色箭头不好,绿色方框不好。
MP3格式问题.jpg
当使用开发人员工具远程调试Android手机时,通常会出现第三方sdkxxx错误,导致setStorageSync失败。开发者工具版本1.02.1802080
开发人员工具远程调试.jpg
使用基本库2.3.0上Map组件的启用滚动功能来禁用地图的拖动。
以下代码无效
以下代码正常

我猜这是微信小程序解析的问题。
发现问题稍微容易一些,因为你可以同时处理前面和后面的问题。如果有很多人一起工作,这些奇怪的问题将需要很多时间