百度知道
青柠姑娘17
TA获得超过3005个赞
关注
成为第581位粉丝
首先说一下我的应用场景, 在小程序中会有多个页面存在视频组件的情况, 为了防止视频播放时多个视频组件同时播放的情况,现记录一下方案:
一 可以在需要视频播放的地方弄一个视频播放的按钮, 当视频播放的时候再初始化视频组件, 保证整个应用内只有一个视频组件(视频组件的位置需要计算), 整个方法只是理论下的情况;
二 在appjs中 设置两个对象, currentVideoId(播放视频组件的id)和videoContext(当前播放视频的对象, 通过wxcreateVideoContext方法获得), 在页面的js中控制, 保证video组件绑定play方法:
<video src="url" bindplay="play"></video>
在play方法中实现即可:
var id = ecurrentTargetid;
if (id != null) {
if (appcurrentVideoId != id) {
if (appvideoContext != null) {
appvideoContextstop();
consolewarn("暂停");
}
appcurrentVideoId = id;
appvideoContext = wxcreateVideoContext(id);
}
}
因为currentVideoId 和videoContext是唯一的对象, 方法中播放监听事件会暂停之前的播放, 然后再赋值, 等下次video播放监听进来的时候, 会进行判断
三 包含富文本组件的视频组件同时播放的情况
依据上面的例子, 当自定义富文本组件中包含多个video组件时也用上面的方法会产生错误, 虽然log会显示将执行视频暂停或者停止播放, 但是没有效果, 查看 视频api , 提示
根据api显示, id为video组件的id, 还有一个"Object this", 但是依据上面的api使用, 直接用id确实可以获取video对象, 但是api解释中提示, "在自定义组件下,当前组件实例的this,以 *** 作组件内 video组件", 在自定义组件中, 要加this, 所以总结: 在上面api使用中, 如果video在pages页面中, wxcreateVideoContext参数只写id没有问题, 但是当video在自定义组件中, 要必须加this, 才能正确返回VideoContext对象;
把微信小程序后台运行的方法是:
1、Android50以上版本的系统中,打开的小程序,会在系统中变成一个独立窗口。打开小程序后,只需要按「概览」键(多任务键)切换至别的app,就能将小程序放入后台运行,即使微信本体从概览界面中被移除。
2、iOS系统中,打开小程序后,点击右上角的三个点按钮,选择「显示在聊天顶部」就可以了。
导致这一问题的原因很有可能是软件卸载不干净造成的,虽然软件已经删除了,但是其在注册表里的信息以及开机启动项里面尚有残留,所以开机自启动时就会报错
解决方法:
出现报错提示时,如果点击“确定”后,系统没有什么不正常,并且可以正常运行的话,可以用软件清理一下注册表里的无效信息和开机启动加载项,以后开机就不会出现这个信息了。
不算。小程序的JavaScript运行环境即不是Browser也不算Nodejs。它运行在微信App的上下文中,不能 *** 作DOM,没有window,document,也不能通过Nodejs相关接口访问 *** 作系统API。
以上就是关于微信如何与小程序的视频同时运行全部的内容,包括:微信如何与小程序的视频同时运行、怎么把微信小程序后台运行、在使用微信小程序的时候出现缺少文件的错误提示要怎么解决等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)