Objective-C: Play Youtube Video on App

那年仲夏 提交于 2019-12-03 07:38:18

问题


I am trying to explore what else can i do in iOS app development and it just now that i've tried to include a video on my app.

I have this code below that aims to play a youtube video when the view loads, but all i got is just a black webView.

NSString *videoURL = @"http://youtu.be/Wq_CtkKrt1o";

videoView = [[UIWebView alloc] initWithFrame:CGRectMake(0, 0, 768, 1024)];
videoView.backgroundColor = [UIColor clearColor];
videoView.opaque = NO;
videoView.delegate = self;
[self.view addSubview:videoView];


NSString *videoHTML = [NSString stringWithFormat:@"\
             <html>\
             <head>\
             <style type=\"text/css\">\
             iframe {position:absolute; top:50%%; margin-top:-130px;}\
             body {background-color:#000; margin:0;}\
             </style>\
             </head>\
             <body>\
             <iframe width=\"100%%\" height=\"240px\" src=\"%@\" frameborder=\"0\" allowfullscreen></iframe>\
             </body>\
             </html>", videoURL];

[videoView loadHTMLString:videoHTML baseURL:nil];

回答1:


you have to use embed link

use below code

NSString *videoURL = @"http://www.youtube.com/embed/Wq_CtkKrt1o";

instead of

NSString *videoURL = @"http://youtu.be/Wq_CtkKrt1o";

try this your problem will solve




回答2:


Can you try the code below it works fine for me

- (void)embedYouTube:(NSString *)urlString frame:(CGRect)frame {
    NSString *embedHTML = @"\
    <html><head>\
    <style type=\"text/css\">\
    body {\
    background-color: transparent;\
    color: white;\
    }\
    </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, urlString, frame.size.width, frame.size.height];
    UIWebView *videoView = [[UIWebView alloc] initWithFrame:frame];
    [videoView loadHTMLString:html baseURL:nil];
    [self.view addSubview:videoView];
    [videoView release];
}


来源:https://stackoverflow.com/questions/15490919/objective-c-play-youtube-video-on-app

易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!