データベースに保存されたYoutubeビデオを再生する機能をユーザーに提供する1つのアプリに取り組んでいます。また、ユーザーが必要に応じて、ビデオを更新できます。
http://www.youtube.com/watch?v=1Ziku4FLka4のようなリンクを DB に保存し、以下のようなコードを実装したボタンのクリックで同じリンクを再生しているとします。
UIWebView *wv;
strUTube = @"http://www.youtube.com/watch?v=1Ziku4FLka4";
wv = [[UIWebView alloc] initWithFrame:CGRectMake(0,10,viewBG.frame.size.width,viewBG.frame.size.height)];
NSMutableString *html = [[NSMutableString alloc] initWithCapacity:1];
[html appendString:@"<html><head>"];
[html appendString:@"<style type=\"text/css\">"];
[html appendString:@"body {"];
[html appendString:@"background-color: transparent;"];
[html appendString:@"color: brown;"];
[html appendString:@"}"];
[html appendString:@"</style>"];
[html appendString:@"</head><body style=\"margin:0\">"];
[html appendFormat:@"<embed id=\"yt\" src=\"%@\" type=\"application/x-shockwave-flash\"", strUTube];
[html appendFormat:@"width=\"%0.0f\" height=\"%0.0f\"></embed>", viewBG.frame.size.width,viewBG.frame.size.height];
[html appendString:@"</body></html>"];
NSLog(@"html:%@",html);
[wv loadHTMLString:html baseURL:nil];
[viewBG addSubview:wv];
[self.view addSubview:viewBG];
次に、別のボタン クリックで、Youtube のホームページを呼び出し、ボタン クリック イベントで開かれた URL を次のコードで取得しています。
NSString *currentURL = [webView stringByEvaluatingJavaScriptFromString:@"window.location.href"];
NSLog(@"currentURL2 : %@",currentURL);
しかし、URL はhttp://m.youtube.com/watch?feature=m-trends&v=to7uIG8KYhgのような結果になり、後で再生することはできません。
Mac Book でも URL を開こうとしましたが、うまくいきませんでした。