gpt4 book ai didi

iphone - 操作无法完成。不允许操作

转载 作者:行者123 更新时间:2023-12-03 18:42:44 24 4
gpt4 key购买 nike

我的 iPhone 应用程序出现非常奇怪的问题。我们有一个应用程序已获得批准并在应用程序商店销售。它包含下载一些数据库更新的功能。该更新通过 HTTP 以 ZIP 形式提供。问题是我无法保存这个下载的 ZIP,因为我收到“操作无法完成。操作不允许”错误。

但是:十分之二的手机会发生这种情况。如果手机无法保存文件,则它根本无法保存文件。如果我从商店重新下载应用程序,它不会改变它。但那些能够保存 ZIP 的手机总是有能力的。所有手机都运行相同的 iOS 版本,而且都是 iPhone 4。这真让我抓狂。

如果我启动 XCode,一部手机在调试时不会出现错误,而另一部手机则会出现错误。他们总是给予。

这是代码:

- (void)connectionDidFinishLoading:(NSURLConnection *)connection {
[activeResponse release];
[theConnection release];

NSLog(@"%d", [receivedData length]);
NSString *s = [[NSString alloc] initWithData:receivedData encoding:NSASCIIStringEncoding];
NSLog(@"%@", s);
[s release];
[theRequest release];
NSString *path = [NSString stringWithFormat:@"%@/%@", [[NSBundle mainBundle] resourcePath], @"temp.zip"];
NSLog(path);
NSError * error;
if ([receivedData writeToFile:path options:NSDataWritingAtomic error:&error])
NSLog(@"Success");
else
NSLog(@"Error");
if (error)
NSLog([error description]);

请问有什么想法吗?

最佳答案

您不允许写入应用程序包,我很惊讶它可以在您的任何设备上运行。您可以在多个地方编写,具体取决于您的目的:

  • 如果要存储文件直到删除它,请写入文档目录:[NSSearchPathForDirectoriesInDomains(NSDocumentDirectory, NSUserDomainMask, YES) objectAtIndex:0]
  • 如果您想让系统在设备空间不足时删除它(并且不关心设备备份时是否保存),请使用缓存目录:[NSSearchPathForDirectoriesInDomains(NSCachesDirectory, NSUserDomainMask, YES) objectAtIndex:0]
  • 如果您只是在处理时临时保存它并立即将其删除,请使用临时目录:NSTemporaryDirectory()

另外,顺便说一句,使用 [directory stringByAppendingPathComponent:filename] 可能会更干净。而不是[NSString stringWithFormat:@"%@/%@", directory, filename]构建路径。

关于iphone - 操作无法完成。不允许操作,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5600269/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com