- 关于 webView 内 visibilitychange 的 bug
https://developers.weixin.qq.com/miniprogram/dev/component/web-view.html 一、过程: --> 打开小程序webView1 --> webView1内的 H5 用 wx.miniprogram.navigateTo 跳转 webView2 --> 将小程序切到后台 --> 将小程序切回前台 PS:两个webView内的H5页面都监听了visibilitychange事件(document.addEventListener("visibilitychange", onVisibilityChange)) 二、预期结果: 只有webView2内的H5会触发visibilitychange事件 三、实际结果: webView1和webView2 同时 触发了visibilitychange事件
2020-12-23 - MediaContainer 的api 是否能拼接音频?注意是拼接,不是重叠。
const c = wx.createMediaContainer() c.extractDataSource({ source: this.url, // 第一个录音 success: (t) => { console.log(1, t) c.addTrack(t.tracks[0]) c.extractDataSource({ source: this.url2, // 第二个录音 success: (tttt) => { console.log(2, tttt) c.addTrack(tttt.tracks[0]) setTimeout(() => { c.export({ success: (ee) => { console.log('export') console.log(ee) const { tempFilePath } = ee this.videoUrl = tempFilePath console.log(this.videoUrl) }, }) }, 1000) }, }) }, fail: (e) => { console.log('extractDataSource fail', e) }, }) 问题详细: 需求是拼接两段录音A、B。 现有做法: 1、在同一个容器(wx.createMediaContainer())内 2、分别调用container.extractDataSource去获取2段录音 3、用container.export出视频文件 微信开发者工具和实机(只测了安卓)得到的结果不一致。 得到结果: 1、开发者工具的结果是A+B,也就是播放完A再播放B,时长也是A的时长加B的时长。 2、安卓实机得到的结果是A和B同时播放,时长是其中一个时长。 我想问的是,MediaContainer是否能实现A+B的结果(而不是A叠加B),如果可以,如何实现。
2020-10-19