Just a Computer Graphics Studio & My Life

[iOS] 播放Youtube影片

想要在APP裡頭播放Youtube影片,其實非常簡單,直接拿前人所寫的方法來用!趁這個時候瞭解webView的用法和html的語法吧~

iOS 播放Youtube影片

只要有這個方法,代入影片來源網址視窗大小即可。

    [self embedYouTube:@"http://www.youtube.com/watch?v=7wvNwOPprBE" frame:CGRectMake(20, 20, 280, 300)];

- (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\">\
    \
    </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];
}

話說Youtube影片只能在實機上測?!

最近蘭陵王非常火紅,女主角又是我喜歡的藝人林依晨,所以就多看幾眼吧:)~

iOS 播放Youtube影片5

iOS 播放Youtube影片4

iOS 播放Youtube影片3

iOS 播放Youtube影片2

原來在模擬器不行跑的原因是

*** WebKit discarding exception: <NSRangeException> *** -[__NSCFString substringToIndex:]: Range or index out of bounds

把我們常見的網址:

http://www.youtube.com/watch?v=7wvNwOPprBE

改成如下的模式即可解決不能播放的問題。

http://www.youtube.com/v/7wvNwOPprBE

我發現iPhone 4的iOS 5.1兩者都可,模擬器和iPad 3的iOS 6.1下面模式才可。

參考:Embedding YouTube videos on iOSiOS – UIWebView not working due to parsing error

廣告

Comments on: "[iOS] 播放Youtube影片" (2)

  1. […] 先前提到可以用Web View來播放Youtube影片,現在我們可以更輕易地播放Youtube影片囉~只要使用第三方套件XCDYouTubeKit,就可以透過內建的MPMoviePlayerViewController來播放影片! […]

    喜歡

  2. […] 要播放Youtube影片的程式碼可以參考我的文章:播放Youtube影片。 […]

    喜歡

發表留言

在下方填入你的資料或按右方圖示以社群網站登入:

WordPress.com Logo

您的留言將使用 WordPress.com 帳號。 登出 / 變更 )

Twitter picture

您的留言將使用 Twitter 帳號。 登出 / 變更 )

Facebook照片

您的留言將使用 Facebook 帳號。 登出 / 變更 )

Google+ photo

您的留言將使用 Google+ 帳號。 登出 / 變更 )

連結到 %s

標籤雲

%d 位部落客按了讚: