2011-01-31 37 views
1

我正在爲iPad開發一個簡單的文本編輯器。 而不是核心數據,應用程序通過調用NSString的writeToFile函數將其內容保存到文檔文件夾中的* .txt文件中。通過這種方式,用戶可以通過iTunes輕鬆傳輸文件。請告訴我,如果這種方法不好或效率低下!我應該多久保存一次該文件?

程序應該多長時間將其內容保存到文本文件中? iOS人類指南指出,應用程序應該「頻繁」保存它的內容,但它沒有給出具體的秒數。

我在某處讀了應用程序應該每兩秒鐘保存一次它的內容。如果這是正確的,我是否需要創建一個函數並使用帶重複模式的NSTimer調用它?

謝謝!

回答

3

除非實際預計會崩潰,否則在「頻繁」保存方面沒什麼意義。 iOS會通知您潛在的應用程序關閉情況,因此我只需保存:1)接收內存警告2)終止3)移動到背景和4)每當用戶請求(通過按鈕或通過導航離開編輯視圖)。除此之外的任何節約實際上都是浪費資源,因爲實際的編輯不會去任何地方,也不會崩潰。

NSString的writeToFile方法適用於純文本,並假設您已將數據作爲NSString。如果你的數據不在NSString中,那麼比起轉換爲NSString並調用writeToFile(例如輸出流),存在更有效的保存方式。另外,如果您使用的文件非常大,則可能需要更多的增量方法(即從更改點到最後)。任何人在iPad上編輯足夠大的文件以滿足需要的可能性都很小。

+2

「始終做好準備停止,儘可能快地保存用戶數據,因爲退出或終止通知可隨時到達。」來自:聖經:https://developer.apple.com/library/ios/#documentation/UserExperience/Conceptual/MobileHIG/UEBestPractices/UEBestPractices.html – Fattie 2011-04-10 19:07:17

相關問題