同问,最近也遇到了 小程序调试库是2.10.3,系统和微信都是最新版
uni-app开发小程序,使用wx.createVideoContext()ios真机无法播放问题?在开发工具和安卓都能正常播放,ios真机调用play()方法不起效,也不报错 试了iPhone11 ios13.3.1 和6s plus都不行 求各位大佬给点帮助 谢谢!! 附上代码 <template> <view class="audo-video"> <video id="Video_1" :src="url" class="hidden" @timeupdate="timeupdate" ref="video" @loadedmetadata="loadedmetadata" ></video> <view class="slider-box"> <text class="mm">{{timer}}</text> <slider style="width: 500upx;" @change="sliderChange" @changing="sliderChanging" class="audio-slider" block-size="16" :min="0" :max="duration" :value="currentTime" activeColor="#ff7400" @touchstart="lock= true" @touchend="lock = false" /> <text class="ss">{{overTimer}}</text> </view> <button @tap="play">播放</button> <button @tap="stop">暫停</button> <button @tap="setRate(0.5)">0.5倍</button> <button @tap="setRate(0.75)">0.75倍</button> <button @tap="setRate(1)">1倍</button> <button @tap="setRate(1.5)">1.5倍</button> <button @tap="setRate(2)">2倍</button> </view> </template> <script> export default { props: {}, data() { return { lock: false, // 锁 status: 1, // 1暂停 2播放 currentTime: 0, //当前进度 duration: 0, // 总进度 videoContext: "", url: "https://webfs.yun.kugou.com/202003111120/e50dbbedace30fdcecfdc5c3f749fe70/G173/M07/1F/08/TYcBAF2y052AJ8TSAEHU69hU-QU049.mp3" }; }, computed: { timer() { return calcTimer(this.currentTime); }, overTimer() { return calcTimer(this.duration); } }, created() { this.videoContext = wx.createVideoContext("Video_1"); }, mounted() { }, methods: { // 倍速 setRate(num) { this.videoContext.playbackRate(num); }, // 播放 play() { this.status = 2; this.videoContext.play(); console.log(this.videoContext); }, // 暂停 stop() { this.videoContext.pause(); this.status = 1; }, // 更新进度条 timeupdate(event) { if (this.lock) return; // 锁 var currentTime, duration; if (event.detail.detail) { currentTime = event.detail.detail.currentTime; duration = event.detail.detail.duration; } else { currentTime = event.detail.currentTime; duration = event.detail.duration; } this.currentTime = currentTime; this.duration = duration; }, // 拖动进度条 sliderChange(data) { this.videoContext.seek(data.detail.value); }, //拖动中 sliderChanging(data) { this.currentTime = data.detail.value; }, // 视频加载完成 loadedmetadata(data) { this.duration = data.detail.duration; } } }; function calcTimer(timer) { if (timer === 0 || typeof timer !== "number") { return "00:00"; } let mm = Math.floor(timer / 60); let ss = Math.floor(timer % 60); if (mm < 10) { mm = "0" + mm; } if (ss < 10) { ss = "0" + ss; } return mm + ":" + ss; } </script> <style scoped lang="less"> .audo-video { padding-bottom: 20upx; } .slider-box { display: flex; align-items: center; justify-content: center; font-size: 26upx; color: #999; } button { display: inline-block; width: 100upx; background-color: #fff; font-size: 24upx; color: #000; padding: 0; } .hidden { position: fixed; z-index: -1; width: 1upx; height: 1upx; } </style>
2020-03-25