2009-04-14 5 views
3

Ich möchte einige benutzerspezifische Daten in meiner iPhone App speichern. Ich war bei der SQLite Probe suchen, und es wird mit etwas Ähnliches wie folgt aus:Ist das NSDocumentDirectory für eine bestimmte Anwendung eindeutig?

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

Was ich möchte, ist, wissen, ist „writableDBPath“ einzigartig für meine Anwendung? Besteht die Gefahr, dass mein "dbName" mit einer anderen Datei mit dem gleichen Namen kollidiert, die von einer anderen App verwendet wird?

Antwort

6

Auf dem iPhone sind sie einzigartig, weil das Sandboxing der Anwendung abgeschlossen ist. Auf einem normalen Mac ist das NSDocumentDirectory jedoch nur für einen Benutzer eindeutig und wenn Sie die Datei nicht irgendwie einzigartig machen oder ein anwendungsspezifisches Unterverzeichnis erstellen, könnten Sie einen Namenskonflikt bekommen, seien Sie also vorsichtig, wenn Du gehst immer von iPhone zu Mac.

Verwandte Themen