2012-04-20 4 views
2

ios用のCordova/phonegapフレームワークを使ってxcodeにアプリを構築しています。これには埋め込まれたyoutube playerコードが含まれているHTMLが表示されます。 iOSは、このYouTubeプレーヤーにヒットすると、ユーザーをYouTubeアプリにリダイレクトするようです。コードヴァーバー1.5.0では、以下のコードが働いていましたが、1.6.1ではそうではありません。どのようなアイデアか、何が変わる必要があるのですか?youtube videos xcode/cordovaでyoutubeアプリを開く1.6.1

コードは、ユーチューブの開口部を停止するとのリンクは自己

- (BOOL)webView:(UIWebView *)theWebView shouldStartLoadWithRequest:(NSURLRequest *)request navigationType:(UIWebViewNavigationType)navigationType 
{ 
    NSURL *url = [request URL]; 

    // Intercept the external http requests and forward to Safari.app 
    // Otherwise forward to the PhoneGap WebView 

    NSString* urlString = [url absoluteString]; 
    if([urlString rangeOfString:@"http://www.youtube.com/embed"].location != NSNotFound) { 
     return [ super webView:theWebView shouldStartLoadWithRequest:request navigationType:navigationType ]; 
    } 
    else if (([[url scheme] isEqualToString:@"http"] || [[url scheme] isEqualToString:@"https"])) { 
     [[UIApplication sharedApplication] openURL:url]; 
     return NO; 
    } 
    else { 
     return [ super webView:theWebView shouldStartLoadWithRequest:request navigationType:navigationType ]; 
    } 
} 

答えて

0

あなたが見ることができますので、私は、IF/ELSEIF /他の各節では、ログステートメントをメソッドの開始時にURLのためにログイン入れ、そしてだろうどのURLが傍受されているのか、それぞれの方法で何が行われているのかを示します。

youtubeリクエストの文字列が、ハードコードされた「http://www.youtube.com/embed」ともう一致しないことがありますか?見る価値がある。

0

これは役立つかもしれないhttp://apiblog.youtube.com/2009/02/youtube-apis-iphone-cool-mobile-apps.html を見て行動します。

これを行うために言う:

NSString *htmlString = @"<html><head> 
<meta name = \"viewport\" content = \"initial-scale = 1.0, user-scalable = no, width = 212\"/></head> 
<body style=\"background:#F00;margin-top:0px;margin-left:0px\"> 
<div><object width=\"212\" height=\"172\"> 
<param name=\"movie\" value=\"http://www.youtube.com/v/oHg5SJYRHA0&f=gdata_videos&c=ytapi-my-clientID&d=nGF83uyVrg8eD4rfEkk22mDOl3qUImVMV6ramM\"></param> 
<param name=\"wmode\" value=\"transparent\"></param> 
<embed src=\"http://www.youtube.com/v/oHg5SJYRHA0&f=gdata_videos&c=ytapi-my-clientID&d=nGF83uyVrg8eD4rfEkk22mDOl3qUImVMV6ramM\" 
type=\"application/x-shockwave-flash\" wmode=\"transparent\" width=\"212\" height=\"172\"></embed> 
</object></div></body></html>"; 

[webView loadHTMLString:htmlString baseURL:[NSURL URLWithString:@"http://www.your-url.com"]]; 
関連する問題