一千萬個為什麽

搜索

NSSearchPathForDirectoriesInDomains返回錯誤的目錄

我正在使用 NSSearchPathForDirectoriesInDomains(NSDocumentDirectory,NSUserDomainMask,YES)來獲取我的應用程序中的應用程序文檔目錄,但是返回的數組只包含一個對象,並且它是一個不可寫的,不正確的目錄:

/ Users/me/Library/Application Support/iPhone Simulator/Documents

我發現這個問題表明問題與配置有關,但答案是不止於此。所以我想我問的是一個重復的問題,但這個問題的答案是不夠的,所以我希望能在這個問題上得到一個真正的答案。

最佳答案

嗯...所以返回目錄的原因可能與您對應用程序的期望可能與Xcode目標類型有關。這不會成為測試目標嗎?在這種情況下,正確的答案很可能是沒有應用程序GUID的答案,因為實際上它不是一個應用程序。這個谷歌小組討論意味著,如果是這樣的話,你會很好只需創建目錄。

只是為了笑容,我從終端窗口創建了目錄/ Users/me/Library/Application Support/iPhone Simulator/Documents,現在它似乎正在運行。仍有測試錯誤,但這些可能是真實的。

我建議您更改測試應用程序以創建文檔目錄(如果它丟失) - 例如:

  if(![[NSFileManager defaultManager] createDirectoryAtPath:NSSearchPathForDirectoriesInDomains(NSDocumentDirectory, NSUserDomainMask, YES) withIntermediateDirectories:YES attributes:nil error:NULL])
        NSLog(@"Error: Create folder failed %@", NSSearchPathForDirectoriesInDomains(NSDocumentDirectory, NSUserDomainMask, YES));

轉載註明原文: NSSearchPathForDirectoriesInDomains返回錯誤的目錄