如何在 Ipad 中播放来自 URL 的视频?
Posted
技术标签:
【中文标题】如何在 Ipad 中播放来自 URL 的视频?【英文标题】:How to play video from URL in Ipad? 【发布时间】:2012-06-06 08:11:27 【问题描述】:在我的应用程序中,我从 UITableview 中的服务器获取视频链接。所有这些链接都存储在 Textfile 中的服务器上,我从服务器中获取所有这些链接,并将每个链接分配给 UITableview 中的单元格。所有这些我都成功完成但我希望当我单击 UITableview 中的任何单元格时,它会在下一个视图中播放视频。这是我的代码。
- (void)tableView:(UITableView *)tableView didSelectRowAtIndexPath:(NSIndexPath *)indexPath
nextview *dvController = [[nextview alloc] initWithNibName:@"nextview" bundle:nil];
[self presentModalViewController:dvController animated:YES];
strFile = [Listdata objectAtIndex:indexPath.row];
NSLog(@"test=%@",strFile);
[dvController release];
在下一个视图中,我将存储在“strFile”中的链接分配给 MPMoviePlayerController,这是我的代码。
-(void)viewDidAppear:(BOOL)animated
NSLog(@"mytest=%@",strFile);
NSURL *url = [NSURL URLWithString:strFile];
NSLog(@"myurl=%@",url);
myplayer = [[MPMoviePlayerController alloc] initWithContentURL:url];
myplayer.view.frame = CGRectMake(0, 0,900, 700);
[self.view addSubview:myplayer.view];
[myplayer play];
在 NSlog 中我看到了链接,但它没有在 MPMoviePlayerController 中播放。任何人都可以提前指导我犯了什么错误。谢谢。
【问题讨论】:
向我们展示mytest
在 viewDidAppear:
方法中为您打印的内容。
在 nslog mytest 中显示这个 mytest=youtube.com/watch?v=kJSkmmUhpHs
你确定视频可以被ios播放吗?
【参考方案1】:
@prince : 你能告诉我你在 NSLog 中得到了什么网址吗?我认为你在获取 url 时弄错了。
我们可以通过
url = [NSURL fileURLWithPath:strUrl];
其他
url = [NSURL URLWithString:strUrl];
尝试一次。
【讨论】:
我在 NSlong test=youtube.com/watch?v=kJSkmmUhpHsmytest=youtube.com/watch?v=kJSkmmUhpHsmyurl=youtube.com/watch?v=kJSkmmUhpHs 中看到了这个网址【参考方案2】:您可能不应该设置框架并添加到子视图,您可能会与MPMoviePlayerViewController
混淆。试试这个...
-(void)viewDidAppear:(BOOL)animated
NSLog(@"mytest=%@",strFile);
NSURL *url = [NSURL URLWithString:strFile];
NSLog(@"myurl=%@",url);
myplayer = [[MPMoviePlayerController alloc] initWithContentURL:url];
myplayer.scalingMode = MPMovieScalingModeAspectFill;
[myplayer play];
EDIT忽略我的代码,您不能直接在 MPMoviePlayerController 中播放 YouTube 视频。改为查看此帖子Play YouTube videos with MPMoviePlayerController instead of UIWebView
【讨论】:
亲爱的 skram,我使用你的代码没有发生与我的 mpmovieplayer 中没有视频播放相同的结果。 Thanx 好的,我明白了你的意思,但在 uitableview 的单元格内,我也有 webview,它显示了存储在该特定单元格中的链接的缩略图。是否可以通过 webview 在 nextview 中播放视频。 您可以在 UIWebView 中嵌入 YouTube 视频,或者在我发布的链接中有一个这样做的示例。【参考方案3】:在应用程序内播放 youtube 视频是使用 Youtube 的 embed 标签创建一个 UIWebView,用于您要播放的电影作为 UIWebView 的内容。 UIWebView 将检测到嵌入的对象是一个 Youtube 链接,并且 web 视图的内容将是视频的 youtube 预览。当您的用户单击预览时,视频将显示在 MPMoviePlayerController 中。试试这个链接:
http://iphoneincubator.com/blog/audio-video/how-to-play-youtube-videos-within-an-application
很遗憾,无法使用 MPMoviePlayerController 直接播放 youtube 视频,因为 youtube 不公开指向视频文件的直接链接。
【讨论】:
以上是关于如何在 Ipad 中播放来自 URL 的视频?的主要内容,如果未能解决你的问题,请参考以下文章
使用swift 3点击单元格时如何在Avplayer中播放来自url的视频