在iphone phonegap应用程序上的youtube视频

时间:2011-09-28 15:30:22

标签: iphone video youtube cordova

我很抱歉再次回到这个话题,但我真的很沮丧!我已经阅读了我发现的每一种资源,在网上搜索,但我无法对我的问题做出明确的答案。

问题描述
我正在创建一个带有phonegap 1.0的iphone应用程序。在这个应用程序中,一个选项卡专门用于来自我的YouTube频道的RSS提要,我希望我的用户能够在点击特定条目后播放这些视频。 问题:有可能吗?最好的解决方案是在应用程序内播放视频,但显示缩略图图像并将用户重定向到原生YouTube应用程序也是可以接受的(即使在这种情况下,我希望在youtube完成播放视频时控件返回到原始应用程序)。

尝试过的解决方案
在网上搜索我找到了几个解决方案,人们说这些解决方案适用于他们,但它们都不适合我!

  • 使用“对象”标签,我最终得到一个白色的屏幕

    <object id="video" width="296" height="100%" data="http://www.youtube.com/v/gDjb9RVMF4c" type="application/x-shockwave-flash">
        <param name="allowfullscreen" value="true" />
        <param name="src" value="http://www.youtube.com/v/gDjb9RVMF4c" />
    </object>
    
  • 使用“embed”标签,我最终得到一个白色的屏幕

    <embed src="http://www.youtube.com/v/gDjb9RVMF4c" type="application/x-shockwave-flash" allowscriptaccess="always" allowfullscreen="true" width="280" height="100%"></embed>
    
  • 我也试过一个“视频”标签,但就我所知,这仍然是不可能的。

如果我错过了已经在某处写过的解决方案,我真的很抱歉,但请相信我......我在做完作业之前就问:-) THX !!

4 个答案:

答案 0 :(得分:5)

这是一个很好的教程,保存了我的一天

http://eisabainyo.net/weblog/2012/01/24/embed-a-youtube-video-iframe-in-phonegap-app/

我也发布一些代码以便快速访问。

<html>
    <head>
        <title>YouTube video</title>
        <meta name="viewport" content="width=device-width; initial-scale=1.0; maximum-scale=1.0; user-scalable=0;" />
        <meta name="apple-mobile-web-app-capable" content="yes" />
        <meta name="apple-mobile-web-app-status-bar-style" content="black" />
        <script src="phonegap-1.2.0.js"></script>
    </head>
    <body>

        <iframe width="560" height="315" src="http://www.youtube.com/embed/9HDeEbJyNK8" frameborder="0" allowfullscreen></iframe>

    </body>
</html>

然后在Phonegap.plist中进行以下更改

MediaPlaybackRequiresUserAction: NO
AllowInlineMediaPlayback: YES
OpenAllWhitelistURLsInWebView: YES
ExternalHosts
          *.youtube.com
          *.ytimg.com

视频也将在您的模拟器上播放。

答案 1 :(得分:4)

除了使用<iframe> ... </iframe>之外,您还需要在OpenAllWhitelistURLsInWebView中将属性YES设置为PhoneGap.plist。这将在PhoneGap应用程序本身内显示和播放视频。它经过了试验和测试。

答案 2 :(得分:3)

您可以尝试将YouTube视频嵌入为iframe,我相信这是现在推荐的方式:

http://apiblog.youtube.com/2010/07/new-way-to-embed-youtube-videos.html

<iframe src="http://www.youtube.com/embed/VIDEO_ID" class="youtube-player" type="text/html" width="640" height="385"  frameborder="0">
</iframe>

答案 3 :(得分:0)

这是我最终在我的应用中使用的component。在YouTube iFrame API的帮助下完成。