嵌入式Vimeo视频无法在PhoneGap应用中播放,但相同的HTML无法使用PhoneGap

时间:2012-03-26 03:32:12

标签: android cordova vimeo

我正在使用PhoneGap / Cordova 1.5.0,这是我的HTML页面:

<html>
<head></head>
<body>
<iframe src="http://player.vimeo.com/video/38799240?title=0&amp;byline=0&amp;portrait=0" width="400" height="225" frameborder="0" webkitAllowFullScreen mozallowfullscreen allowFullScreen></iframe>
</body>
</html>

使用安装了Android OS 2.3.3的Motorola Droid 2,如果我在普通浏览器中提取此HTML页面,我可以按预期播放视频。

但是,如果我在PhoneGap项目中将该HTML设为我的index.html页面,我可以看到视频缩略图和播放按钮,但点击它只会将播放按钮变为微调器一秒钟,视频不会不玩。

我发现一些帖子让它听起来像是一个访问来源问题,有些人说你可以使用像*这样的通配符,有些人说它就像是一个perl正则表达式,所以你使用正则表达式的野天星,即: .*,我在res / xml / cordova.xml文件中尝试了许多版本,如:

<access origin="http://127.0.0.1*"/>
<access origin="http://player.vimeo.com*"/>
<access origin="http://*.vimeocdn.com*" />
<access origin="http://*.vimeo.com*" />
<access origin="http://vimeo.com*" />

这似乎没有效果。

我还没有在iPhone PhoneGap环境中对此进行测试。

谢谢!

2 个答案:

答案 0 :(得分:0)

你不能在这样的手机屏幕中加入外部视频(vimeo / youtube)。 你需要指向实际的视频或者只是打开你在childbrowser中已有的视频(使用带有视频的图像作为触发器会很好)。

答案 1 :(得分:0)

我可以在我的iOS应用程序中使用iFrame标签播放Vimeo视频,这也是基于phonegap的。我在这里使用Phonegap 3.2.0。以下是我正在使用的代码

NSString* embedHTML = @"<html><head>\
<style type=\"text/css\">\body {\background-color: #000000;\
color: white;}</style></head><body style=\"margin:0\">\
<iframe width=\"512\" height=\"374\" src=\"http://player.vimeo.com/video/60331941\" frameborder=\"0\" allowfullscreen></iframe></body></html>";

NSString* html = [NSString stringWithFormat:embedHTML, urlVideo];

[customWebView loadHTMLString:html baseURL:nil];

我在config.xml文件中将以下网址列入白名单。

<access origin="*.vimeo.com" />
<access origin="*.vimeocdn.com" />

我已经在phonegap插件类中编写了这段代码。所以,我可以在这里编写Objective-C代码。但同样可以在html文件中完成。

希望它在某种程度上有所帮助!!