我们正在开发混合应用程序(Phonegap + Native)。它有 3 个选项卡,其中第一个选项卡加载 Phonegap HTML 内容,另外两个选项卡加载整个基于 native 的内容。
在两个(HTML + Native)选项卡中都有一个播放视频的选项,这是一个完整的场景:
- 在“在线”选项卡中播放视频文件一段时间 - 暂停视频
- 切换到离线标签 - 播放视频文件一段时间 - 暂停视频
- 返回“在线”选项卡 - 它显示暂停的视频页面(作为默认选项卡行为) - 现在在此处播放视频
- 这样做也会自动启动离线标签视频,而我们在 viewWillDisappear 中有条件 - 如果视频正在播放,则暂停它。它也被调用并被暂停。
但不知何故,在在线选项卡中播放视频时也引用离线选项卡,并播放离线视频。
这怎么可能?请提出建议。
最佳答案
简短回答:
发生“内部连接”是因为 PhoneGap 对两个选项卡使用相同的视频实例。
更深入一点:
您显然没有通过卸载来断开视频连接...因为您正在暂停视频实例,而不是停止并卸载它们。解决方法是存储播放位置,并在离线和在线选项卡之间切换时实际停止视频。
简单地说:当选项卡变为非事件状态时,不要让视频暂停,因为它不仅会占用用户看不到的内容的资源,而且还会使视频保持链接状态。 Phonegap 本身并不影响播放同一视频的选项卡,因此您需要通过代码自行处理。如果您不这样做,Phonegap 将执行您当前注意到的操作:它将“取消暂停”所有标识为“同一视频”的链接视频(无论哪个选项卡)。
关于ipad - 在混合应用中,HTML播放器和Native播放器正在相互连接,为什么?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17612347/