【发布时间】:2016-08-06 09:15:34
【问题描述】:
我在基于 Cordova 的应用上播放 iOS 上的本地视频时遇到问题。一开始我想强调这个问题只有在我使用WKWebView时才会出现,如果使用UiWebView,视频播放正常。这是我的场景:
-用户来到视频 url 传递到的屏幕
-通过 FileTransfer 我将其下载到手机并将其存储在所需位置
-使用JS视频加载到<video>标签并播放。
基本上,我正在按照对这个 SO question 的回答中的描述做所有事情。 UiWebView 的问题是,如果相对路径设置为 src,由于某种原因无法加载视频(无论我使用哪种组合),所以这个解决方案对我来说非常有用,因为它基于这行代码:
entry.toURL()
这会返回下载视频的完整路径,这很棒,至少对于 UiWebView 而言。
WkWebView 的问题是 entry.toURL() 返回 smth。像这样:
file:///var/mobile/Containers/Data/Application/3A43AFB5-BEF6-4A0C-BBDB-FC7D2D98BEE9/Documents/videos/Dips.mp4
而且 WKWebView 不适用于 file:// 协议。此外,WKWebView 都不适用于相对路径:(
谁能帮我解决这个问题?
【问题讨论】:
-
确保您在
config.xml中启用了iOS 的AllowInlineMediaPlayback首选项。 cordova.apache.org/docs/en/latest/config_ref/…。另外,您使用哪个插件来启用 WKWebView 的使用? -
抱歉回复慢,是的,我已经添加了那行,但不幸的是它没有帮助我。我正在使用这个插件:github.com/Telerik-Verified-Plugins/WKWebView
-
@daserge 我相信这应该会有所帮助,但我无法让它工作:/所以这就是我得到的绝对网址:
file:///var/mobile/Containers/Data/Application/A313B954-55C5-49F1-801F-5AF519EA4E8E/Library/files/video/High-Knees.mp4。这些是我尝试过的组合(没有一个有效):http://localhost:12344/Library/files/video/High-Knees.mp4http://localhost:12344/video/High-Knees.mp4http://localhost:12344/var/mobile/Containers/Data/Application/A313B954-55C5-49F1-801F-5AF519EA4E8E/Library/files/video/High-Knees.mp4 -
@hyperN 如果您正在下载文件并将其存储在设备中,您不能只使用可让您在所需播放器中播放视频的 fileopener cordova 插件打开视频吗?
标签: ios cordova video html5-video phonegap-build