2009-04-14 50 views
3

我想在我的iPhone应用程序中保存一些用户特定的数据。我一直在寻找在SQLite的样品,它采用类似于此:对于给定的应用程序,NSDocumentDirectory是唯一的吗?

NSArray *paths = NSSearchPathForDirectoriesInDomains(NSDocumentDirectory, NSUserDomainMask ,YES); 
NSString *documentsDirectory = [paths objectAtIndex:0]; 
NSString *writableDBPath = [documentsDirectory stringByAppendingPathComponent:dbName]; 

我想知道的是什么,是“writableDBPath”唯一我的应用程序?有没有我的“dbName”会与另一个应用程序使用的另一个同名文件冲突的风险?

回答

6

在iPhone上,它们是独一无二的,因为应用程序沙箱已完成。然而,在一个普通的mac上,NSDocumentDirectory只对用户是唯一的,如果你不想让该文件在某种程度上是独一无二的或者创建一个特定于应用程序的子目录,你可能会得到一个名字冲突,所以只要注意if你曾经从iPhone到Mac。

相关问题