ios - NSData 为不同文件路径的同一文件返回 nil

标签 ios objective-c ios-simulator nsdata nsurl

我将 .aiff 格式的音频文件存储在两个不同的文件夹中。 NSData 为一个文件路径返回 nil,即使两个文件路径都有音频文件。我仔细检查了文件路径。

路径是这样的:

//url1 file:///Users/VenkataManiteja/Library/Developer/CoreSimulator/Devices/80B8117E-D2C9-4B42-8A76-9A89A10FB1C1/data/Containers/Data/Application/FD17AD64-EAF9-4578-B50D-0B5BF6F2DEFF/Documents/28Apr15_090827AM.aif
//url2 file:///Users/VenkataManiteja/Library/Developer/CoreSimulator/Devices/80B8117E-D2C9-4B42-8A76-9A89A10FB1C1/data/Containers/Data/Application/B60CF270-73CA-4BE4-BA75-B2AC3642360D/Documents/28Apr15_090827AM.aif

NSError *err;
data = [NSData dataWithContentsOfURL:url1]; //this is working fine
audioPlayer = [[AVAudioPlayer alloc] initWithData:data error:&err];
data = [NSData dataWithContentsOfURL:url2]; //nsdata is returning nil  

谁能告诉我为什么 url2 得到的是 nil NSData

最佳答案

您正在尝试读取正在运行的应用程序沙箱之外的文件。虽然两者都可能存在,但假设您正在运行 ID 为“FD17AD64-EAF9-4578-B50D-0B5BF6F2DEFF”的应用程序,这就是为什么该 URL 有效而另一个无效的原因。

我建议观看 WWDC 视频 A Practical Guide to the App Sandbox了解有关安全模型如何工作的更多信息。

关于ios - NSData 为不同文件路径的同一文件返回 nil,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29928927/

相关文章:

ios - 如何根据选择的日期显示 UITableView?

iOs 8 在同一设备上显示与 iOs7 不同的相同应用程序

objective-c - 为什么在添加 subview Controller 后需要再次添加 subview ?

ios - 如何在 Xcode 5.1.1 或 Xcode 5 中获得与 iPhone 相同的 iPhone 模拟器 7.1 皮肤

ios - Swift Realm - 查询空集但数据位于 RealmBrowser 中

iphone - ivars 的另一个内存管理查询

iphone - llvm-gcc-4.2 : error

iOS 6 流媒体播放器 com.apple.coremedia.networkbuffering 错误

ios - 尝试呈现其 View 不在窗口层次结构中的 vc

iphone - 如何从 iphone sdk 中的 ISOCountryCode 获取 ISOCurrencyCode?