如何在iPhone应用程序中从服务器播放视频网址 [英] How to play a video url from server in an iPhone app
本文介绍了如何在iPhone应用程序中从服务器播放视频网址的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!
问题描述
实际上,我使用 XMLParser
从服务器获取了一个URL。我想在我的应用程序中播放这个视频网址。
现在我使用了`MPMoviePlayerController,但它没有用。请帮忙!
Actually, I get a url from server by using XMLParser
. I want to play this video url in my app.
Now I used `MPMoviePlayerController, but its not working. Please help!
XMLParser.m
XMLParser.m
-(id) loadXMLByURL:(NSString *)urlString
{
videoNames =[[NSMutableArray alloc]init];
videos = [[NSMutableArray alloc] init];
NSURL *url = [NSURL URLWithString:urlString];
NSData *data = [[NSData alloc] initWithContentsOfURL:url];
parser = [[NSXMLParser alloc] initWithData:data];
parser.delegate = self;
[parser parse];
return self;
}
- (void) parser:(NSXMLParser *)parser didStartElement:(NSString *)elementname namespaceURI:(NSString *)namespaceURI qualifiedName:(NSString *)qName attributes: (NSDictionary *)attributeDict
{
if ([elementname isEqualToString:@"items"])
{
}
if ([elementname isEqualToString:@"video"])
{
NSLog(@"video");
currentVideo = [Video alloc];
}
}
- (void) parser:(NSXMLParser *)parser didEndElement:(NSString *)elementname
namespaceURI:(NSString *)namespaceURI qualifiedName:(NSString *)qName
{
if ([elementname isEqualToString:@"video"])
{
currentNodeContent2= [[currentNodeContent2 stringByReplacingOccurrencesOfString:@"+" withString:@" "]
stringByReplacingPercentEscapesUsingEncoding:NSUTF8StringEncoding];
[videos addObject:currentVideo];
currentVideo.content2 = currentNodeContent2;
}
if ([elementname isEqualToString:@"name"])
{
currentNodeContent2= [[currentNodeContent2 stringByReplacingOccurrencesOfString:@"+" withString:@" "]
stringByReplacingPercentEscapesUsingEncoding:NSUTF8StringEncoding];
[videoNames addObject:currentVideo];
currentVideo.content2 = currentNodeContent2;
NSLog(@"%@",currentNodeContent2);
}
}
// in my class.m
-(void)playButtonPressed1:(UIButton*)sender
{
UIButton *btn1 = (UIButton *)sender;
Video *currentVideo= [[xmlParservideo videos] objectAtIndex:btn1.tag];
NSString *urlString=currentVideo.content;
NSURL *playURL=[[NSURL alloc]initWithString:urlString];
self.player =[[MPMoviePlayerController alloc]initWithContentURL
:playURL];
player.view.frame = CGRectMake(0,80,340,360);
[self.view addSubview:player.view];
self.player.movieSourceType = MPMovieSourceTypeUnknown;
[self.player prepareToPlay];
[self.player play];
}
my xml
<items>
<item>
<pastor> Master Jojimon</pastor>
<video>
http3A2F2Fvideo.google.com2Fgoogleplayer.swfFdocidD-675885207870876013326hl%3Den
</video>
<name>Message by Master Jojimon</name>
<lan>english</lan>
推荐答案
在该视频字符串无效之前它无效网址。它指向一个不是视频的swf flash文件。 B只需在Safari中输入网址即可将其显示为有效地址。
Its not working before that video string is not a valid url. A its pointing to an swf flash file which isn't a video. And B just typing in the url to Safari shows it as not a valid address.
如果您要处理加载错误,我相信它会说它不是有效的URL。
If you were to handle for loading errors I am sure it would say its not a valid URL.
这篇关于如何在iPhone应用程序中从服务器播放视频网址的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!
查看全文