禁用YouTube或可能修复桌面以外的设备

时间:2013-08-29 18:35:16

标签: php youtube youtube-api

我有一个网站,我一直在努力,我们有一个iframe,从给定的YouTube频道中提取最新视频。它可以在可以运行闪存的桌面或设备上正常工作但是当用户在IOS设备上或某些Android设备上没有任何显示时。它是一个空的广场。是否有一个很好的解决方案,有人知道或我可以解决这个问题?我已经尝试检测它是否是移动平台并显示填充图像,但仍然无法在所有设备上运行。任何建议都会很棒。

我还考虑过只使用YouTube API并获取视频图像并显示用户点击它然后只是将您带到视频,这将是一个修复但是最后的修复。

此外,如果有人有更好的方式让代码工作,那么我在id下面就会喜欢看到它!

<div class="span6 data_video">
    <?php
        $url = 'http://gdata.youtube.com/feeds/api/users/'. $Youtube .'/uploads?max-results=1';
        $xml = simplexml_load_file($url);
        foreach ($xml->entry as $entry) :

            // get nodes using mrss ('media' rss namespace)
            $kids = $entry->children('http://search.yahoo.com/mrss/');

            // for the embed src (just the flv location - you'll need to print out the rest of the object/embed tag
            $attributes = $kids->group->content[0]->attributes();
            $flv = $attributes['url'];

        endforeach; 
    ?>
    <iframe align="left" width="100%" height="315" src="<?php echo $flv; ?>" frameborder="0" allowfullscreen></iframe>
</div>

检测即时使用的移动浏览器的代码仅为http://detectmobilebrowsers.com/

1 个答案:

答案 0 :(得分:0)

来自Drewid的另一个stackoverflow帖子......

var hasFlash = false;
try {
  var fo = new ActiveXObject('ShockwaveFlash.ShockwaveFlash');
  if(fo) hasFlash = true;
}catch(e){
  if(navigator.mimeTypes ["application/x-shockwave-flash"] != undefined) hasFlash = true;
}

您还可以通过将url var?html5 = 1添加到iframe地址来通过html 5传输youtube