それがYouTubeビデオの埋め込みであるかどうかをアプリに認識させてから、アプリ内のwebViewが必要です
これが私が今使っているコードです:
- (BOOL)webView:(UIWebView *)webView shouldStartLoadWithRequest:(NSURLRequest *)request navigationType:(UIWebViewNavigationType)navigationType;
{
NSString *urlString = request.URL.absoluteString;
NSString *youtube;
youtube = @"youtube";
if ([urlString rangeOfString:youtube options: NSCaseInsensitiveSearch].location != NSNotFound){
return YES;
}
[[UIApplication sharedApplication] openURL:request.URL];
return NO;
}
ほとんどの YouTube リンクは、すでに Web ページに埋め込まれたビデオとして直接転送されるため、ほとんどの場合、これでうまくいきます。ただし、YouTube からプロファイル ページまたは他のページを選択するかどうかを確認します。アプリには戻るボタン (HTML ページのボタン) がないため、アプリ内で開きます。そのため、動画へのリンクではない場合、元に戻すことはできません。@"youtube.com/watch" @"/watch?" を使ってみた @"見る?" rangeOfString と同じですが、 YouTubeのみが機能します。
例: これは YouTube ビデオの URL: data-url="http://youtube.com/watch?feature=player_detailpage&v=Ke1Y3P9D0Bc" (アプリ内ビューは良好)
dara-url="youtube.com" (失敗、まだアプリ内ビュー)
間違った形式で文字列を保存したのだろうか、シンボルは rangeOfString でサポートされていませんか? または、次のような別の方法がある可能性がありますurlString rangeOfString:youtube && @"watch"
これをありがとう、本当に感謝します。