我有一个简单的UIWebView,显示包含YouTube缩略图的页面。当我点击它时,它会将其加载到应用程序中,但我希望它在YouTube应用程序中的应用程序之外加载。 怎么办呢?
感谢。
答案 0 :(得分:1)
应该像加载YouTube-video-url一样简单:
[[UIApplication sharedApplication] openURL:[NSURL URLWithString:@"http://www.youtube.com/watch?v=abcde12345"]];
它无法在模拟器中运行,因为它没有YouTube应用程序,但它可以在iPhone上运行(我希望,未经测试)。
(我也看到你的接受率非常低,你应该点击你觉得最好答案的答案旁边的小✔。这样人们想知道同样的事情可以找到最有用的快速回答,发布答案的人将获得认证。)
修改强> 下面是一个示例,说明如何抓住YouTube网址并在YouTube应用中打开它们,而不是在应用中打开它们:
- (BOOL)webView:(UIWebView *)wv shouldStartLoadWithRequest:(NSURLRequest *)request navigationType:(UIWebViewNavigationType)navigationType {
// Determine if we want the system to handle it.
NSURL *url = request.URL;
if ([url.host isEqual:@"youtube.com"] && ([url.query rangeOfString:@"watch"] != 0)) {
if ([[UIApplication sharedApplication]canOpenURL:url]) {
[[UIApplication sharedApplication]openURL:url];
return NO;
}
}
return YES;
}
这未经过测试,但应该有效:)
答案 1 :(得分:0)
来自http://apiblog.youtube.com/2009/02/youtube-apis-iphone-cool-mobile-apps.html
方法2:将YouTube播放器嵌入UIWebView
不,iPhone仍然没有Flash,但如果你还没有 注意到,iPhone上的Safari浏览器非常聪明,可以随意转动 YouTube嵌入了一个可点击的缩略图,用于启动本机 手机上的YouTube播放器应用。你可以利用这个 通过使用UIWebView在您的应用程序中的功能。方法如下:
在您的应用中设置UIWebView。您可以将其作为xib的一部分或以编程方式创建它。根据大小调整UIWebView的大小 你想要可点击的缩略图。
使用与上述方法相同的方法抓取视频网址。
- 醇>
使用包含YouTube的精心构建的HTML调用UIWebView实例上的loadHTMLString:baseURL:方法 嵌入式播放器代码段和一些支持HTML以确保 视频缩略图正确显示。将基本URL设置为 您网站的网址(此处不做任何事情 - 通常 UIWebView使用它来正确处理相对URL链接。
说明这一点的最佳方法是使用代码段。注意使用 视口HTML元参数和宽度的一致使用 和高度参数。
// webView是一个UIWebView,可以通过编程方式初始化,也可以 作为xib的一部分加载。
NSString * htmlString = @“”;
[webView loadHTMLString:htmlString baseURL:[NSURL URLWithString:@ “http://www.your-url.com”]];
这种方法的最大好处之一是您的应用程序没有 必须退出才能让视频开始播放。事实上, iPhone会在启动时让您的应用在后台运行 YouTube播放器播放视频。视频播放完毕后 (或当用户点击“完成”)时,用户将被自动收回 到你的应用程序。这种体验与观看嵌入式非常相似 iPhone Safari浏览器中的YouTube视频同样无缝。