来自 NSBundle 路径的 NSURL 返回 nil

Posted

技术标签:

【中文标题】来自 NSBundle 路径的 NSURL 返回 nil【英文标题】:NSURL from NSBundle path returns nil 【发布时间】:2014-09-02 22:47:25 【问题描述】:

所以我尝试使用视频作为背景,我的应用中有一个.mov 文件,当我运行此代码时:

NSBundle * bundle = [NSBundle mainBundle];

NSString * urlString = [bundle pathForResource:@"movie" ofType:@"mov"];
NSURL * movieURL = [NSURL URLWithString:urlString];

if (!movieURL) 

    NSLog(@"Not valid");


我在控制台中得到Not valid。我检查了urlString,它给了我一个网址,我确信该文件的名称正确且不在目录中。

所以文件在那里并被复制到源中。不知道为什么会这样。

【问题讨论】:

【参考方案1】:

你想使用:

NSURL *moveiURL = [NSURL fileURLWithPath:urlString];

更好的是,使用:

NSURL *moveURL = [bundle URLForResource:@"movie" withExtension:@"mov"];

【讨论】:

Ahhhh 完全错过了这一点。呸!谢谢!我又犯了一个愚蠢的错误。 :)

以上是关于来自 NSBundle 路径的 NSURL 返回 nil的主要内容,如果未能解决你的问题,请参考以下文章

来自字符串的 NSURL 不起作用

IOS开发-UI学习-NSBundle和NSHomeDirectory的区别

NSBundle pathForResource 无

使用来自 [[NSBundle mainBundle] resourcePath] 的路径

iOS:[NSBundle pathForResource:ofType:inDirectory] ​​返回 nil?

NSBundle 在尝试实例化 AVAudioPlayer 时找到 mp3 文件但没有找到 m4a