3

我正在使用 MPMoviePlayerController 从 url 播放视频。为此,我从 Xml 解析器获取链接。这很好。

 NSString *path=[[self.items  objectAtIndex:videoIndex]objectForKey:@"link"];

我将该路径分配给 NSURL fileWithPath,如下所示。

    NSURL *mediaUrl = [NSURL fileURLWithPath:path];

打印 mediaUrl 时,NSLog 给出“ http://example.com -- file://localhost/ ”

为什么 --file://localhost/ 附加到 url,因为这个视频没有播放。任何帮助请。谢谢。

4

2 回答 2

5

改变 : NSURL *mediaUrl = [NSURL fileURLWithPath:path];

至 : NSURL *mediaUrl = [NSURL URLWithString:path];

当您调用fileURLWithPath它时,它会附加file://localhost/到您的 URL 字符串中。

于 2013-02-13T07:42:04.003 回答
3

这可能有点旧,但是如果您传入的字符串不是有效的完整路径字符串,则 NSURL 会附加 --file:://localhost 。

在您的情况下,这可能是因为您没有以“/”开头的字符串(即:如您所见,“var/test”将附加 file://localhost,但如果您更改它到 "/var/test" 你会正确地得到一个带有 "file://localhost/var/test" 的 NSURL

如果您尝试创建相对路径,则可以从“~/somelink”开始,然后首先使用 stringByExpandingTildeInPath 来获取完整路径。

于 2013-09-13T19:45:38.740 回答