0

我有一个 Ipad 应用程序,可以从 Internet 下载不同的文件。当我使用 Xcode Simulator 时,这个 App 效果很好。当我在 Ipad 上尝试应用程序时,应用程序开始时出现错误,并且由于此错误,应用程序无法运行。

error creating directory in createPath: Error Domain=NSCocoaErrorDomain Code=513 "The operation couldn’t be completed. (Cocoa error 513.)" UserInfo=0x2d3eb0 {NSFilePath=/var/mobile/Applications/DE851748-0D7A-4416-9B62-8EEEF9B80533/Cache, NSUnderlyingError=0x2cb8e0 "The operation couldn’t be completed. Operation not permitted"}

我创建文件夹的代码:

-(void) createPath{
NSError *error;

[[NSFileManager defaultManager] createDirectoryAtPath:masterFolder
                               withIntermediateDirectories:YES
                                                attributes:nil
                                                     error:&error];
     if (error != nil) {
         NSLog(@"error creating directory in createPath: %@", error);

     }

}

这是我的变量:

masterFolder = [NSHomeDirectory() stringByAppendingPathComponent:@"/Cache/"];

这是我知道的 Code 513 的一个老问题,我解释一下我到目前为止所做的事情:

  1. 我从模拟器(重置)和 Ipad 中手动删除应用程序
  2. 将 StringByAppendingString 更改为 StringByAppendingPathComponent ,如下所示: Save UIImage in application path
  3. 我已经使用了 Apple 的标准文件夹“Cache”,就像这里NSFileManager 创建文件夹(Cocoa 错误 513。)
  4. 是的,我已经重新启动了我的 Mac ;)

还有更多站点。但我不明白为什么模拟器的工作方式与原始 Ipad 不同。还是我监督了什么?!?谢谢!

4

2 回答 2

0

我想知道它是否与文件名的大小写有关?

iOS 区分大小写,而 OSX 则不区分大小写,因此某些可能在模拟器上运行,而在 iOS 上不存在的情况。

于 2014-04-23T13:31:52.583 回答
0

所以,我只是改变我的文件夹,它的工作原理

masterFolder = [NSHomeDirectory() stringByAppendingPathComponent:@"/Cache/"];

masterFolder = [NSHomeDirectory() stringByAppendingPathComponent:@"/Documents/"];

但为什么 ?我不知道。在此站点上,您可以看到不同类型文件夹之间的差异 1目录:临时、缓存、文档

于 2013-04-25T10:17:43.150 回答