這可能涉及到這個問題,但它並沒有幫助我很多:我的Mac應用程序的NSUserDefaults從哪裏來?
Where is a Mac Application's NSUserDefaults Data Stored?
當我離開我的應用程序我的設置被寫入到庫/首選項文件夾,然後在其他地方。至少我沒有看到其他東西。我的應用程序也不是沙盒。 每次運行我的應用程序並更改設置時,都會寫入新的設置文件,所以我猜這是真實的,而不是舊的副本。
但是,如果我編輯保存的設置,甚至刪除文件,我的應用程序將重新啓動之前保存的設置。我甚至清空了垃圾。
這些設置從何而來? 我想將我的應用程序重置爲我在代碼中設置的默認設置,但我完全無法這樣做。它總是找到一些設置來加載。
編輯
我使用的代碼來自這個問題: Easy way to see saved NSUserDefaults?
NSArray *path = NSSearchPathForDirectoriesInDomains(
NSLibraryDirectory, NSUserDomainMask, YES);
NSString *folder = [path objectAtIndex:0];
NSLog(@"Your NSUserDefaults are stored in this folder: %@/Preferences", folder);
它輸出說我的設置是在庫/ Prefrences。所以我再次刪除文件。當我重新啓動應用程序時,它仍然堅持我的設置在那裏。
如果不存在的UserDefaults文件被自動寫入並充滿了類似的窗口位置和such.Yet的東西,因爲裏面似乎有自定義的值,你是否以某種方式初始化用戶默認值? – Volker