2011-11-05 123 views
1

更新到iOS5时,我的应用程序出现了一些问题。 在我的文档目录中,我有一个sqlite文件和PDF文档。 sqlite文件包含PDF文档的网址。iOS 5更新后,我的文档目录中的文件不见了? iOS是否更改文档目录?

当我启动我的应用程序时,我可以看到保存在sqlite文件中的文档列表。 但是,当我想打开PDF文件时,找不到该文件。

所以我觉得iOS更改文档目录地址。 这可能吗?

保存我的PDF文件的地址,这样的:

NSArray *pathArr = NSSearchPathForDirectoriesInDomains(NSDocumentDirectory, 
                     NSUserDomainMask, 
                     YES); 
NSString *filename = [NSString stringWithFormat:@"%@/%@/%@",[pathArr objectAtIndex:0],title,versionString]; 
+0

这同样的事情发生在我身上。该文件仍然存在,但应用程序无法找到它。如果它创建一个具有相同名称的新名称,它可以找到并打开它。 – okysabeni

回答

1

这是很难回答没有更多资料你的问题。你能够读取你所说的sqlite文件在Documents文件夹中的事实表明你的程序至少可以找到那个文件。

你可以看看,看看究竟是Documents文件夹中通过设置 应用程序支持iTunes的文件共享应用程序的Info.plist文件 属性。然后,您可以查看应用程序的文档文件夹并在iTunes中添加/删除文件。

您还可以在

~Library/Application Support/iPhone Simulator/<IOSVERSION>/Applications/<UUID>/Documents 

目录,如果你正在运行的模拟器。

您至少知道Documents目录的实际内容是什么...

+0

那么这些文件就在那里。但我认为问题是,我硬编码pdf的文件路径并将其保存到sqlite文件。我认为NSDocumentDirectory在iOS5中返回的内容与iOS4中的不同。另外我怎样才能模拟版本更新?因为当我在iOS5中进行全新安装时,它工作正常。 – madmax

+1

我会说,除了查看存储在sqlite数据库中的路径并修剪它(如有必要)并将其追加到由NSSearchPathForDirectoriesInDomains返回的当前路径之外,别无选择。然后你不关心版本更新。 – John

+0

@John,NSSearchPathForDirectoriesInDomains文件夹是否在iOS5.0中返回/Library/Cache /而不是/Documents?我读到了iOS 5的内容,您需要将所有下载的内容存储到库中,而不是存储到文档中。 – NavSoft

相关问题