2010-07-20 61 views
1

iphone/ipad模擬器的權限是否與設備本身不同?我只問,因爲我正在嘗試使用文件I/O,創建並寫入我自己的臨時文件失敗,但創建和寫入到我的Mac上的桌面(來自iPad模擬器)完全沒問題。iPhone模擬器上的文件權限

我在做模擬器上創建的tempfile文件時出錯了嗎?

+0

很難說如果有什麼不對的地方沒有看到你的代碼......你在什麼目錄下寫你的臨時文件? – Vladimir 2010-07-20 13:46:47

回答

1

權限不同。在模擬器上,您可以在應用程序的目錄之外進行編寫,但不能在設備上進行編寫。如果您可以在設備上,則更改其他應用程序或攻擊操作系統。

+0

非常感謝,這是很好的知道。對於那些希望獲得更多幫助的人來說,使用writeToFile而不是writeToURL並在應用程序目錄中進行定位可以解決這個問題。 – mtrc 2010-07-21 09:53:04

2

你使用臨時目錄嗎?在模擬器上,NSTemporaryDirectory()返回Mac OS X tmp,它位於應用程序沙箱外的/ var中。

#if TARGET_IPHONE_SIMULATOR 
NSString *tmpPath = [NSHomeDirectory() stringByAppendingPathComponent: @"tmp"]; 
#else 
NSString *tmpPath = NSTemporaryDirectory(); 
#endif