如何在浏览器中启动YouTube视频而不点击播放图标

时间:2013-01-21 08:58:30

标签: iphone ios ipad ios6 youtube

我使用以下代码播放youtube网址:

NSString *youtubeUrl = [NSString stringWithFormat:@"http://www.youtube.com/v/%@",[photo videoUrl]];
[self embedYouTube:[youtubeUrl stringByAddingPercentEscapesUsingEncoding:NSUTF8StringEncoding] frame:CGRectMake(10, 120, 300, 200)];

- (void)embedYouTube:(NSString*)url frame:(CGRect)frame
{
    NSString* embedHTML = @"\
    <html><head>\
    <style type=\"text/css\">\
    body {\
        background-color: black;\
    color: black;\
    }\
    </style>\
    </head><body style=\"margin:0\">\
    <embed id=\"yt\" src=\"%@\" type=\"application/x-shockwave-flash\" \
    width=\"%0.0f\" height=\"%0.0f\"></embed>\
    </body></html>";
    NSString* html = [NSString stringWithFormat:embedHTML, url, frame.size.width, frame.size.height];
    if(videoView == nil) {
        videoView = [[UIWebView alloc] initWithFrame:frame];
        videoView.layer.borderColor = [[UIColor blackColor] CGColor];
        [self.view addSubview:videoView];
        [videoView setHidden:NO];
    }
    [videoView loadHTMLString:html baseURL:nil];
}

用户需要点击网页浏览来播放此视频。如果不点击播放图标,它是否无法直接加载视频?

enter image description here

4 个答案:

答案 0 :(得分:1)

向网址添加参数autoplay=1,如下所示:

NSString *youtubeUrl = [NSString stringWithFormat:@"http://www.youtube.com/v/%@?autoplay=1",[photo videoUrl]];

答案 1 :(得分:0)

选中这种方式嵌入你的游戏,支持Auto PLay

https://developers.google.com/youtube/player_parameters

答案 2 :(得分:0)

您应该检查使用MoviePlayer组件的LBYouTubePlayerController来加载YouTube视频,并且更容易自定义内容,例如自动播放功能。

答案 3 :(得分:0)

我认为简短的回答是,如果您使用webView显示视频,则根据Apple指南不再允许自动播放。 docs specifically state

  

警告:防止通过蜂窝网络进行未经请求的下载   用户的费用,嵌入式媒体无法自动播放   iOS上的Safari - 用户始终启动播放。

Google Developer / YouTube API docs引用了相同的文档。