2012-07-26 95 views
1

我有一個應用程序跟蹤用戶,因爲他們開車。它使用CLLocationManager,每次調用didUpdateToLocation時,都會保存CLLocation點。NSUserDefaults和保存大小

大約25英里的行程產生1200點附近的某處。

截至目前,我將這些點數保存到用戶測試的默認值。我應該看看CoreData來妥善保存這些信息嗎?或者可能只是將所有內容寫入文件?

我的問題是,可以NSUserDefaults「max out」?我可能有數百個保存的數組,每個數組都有成千上萬個CLLocation點。

任何建議將非常感激。

回答

3

無論用戶大小默認,它都不是爲此目的而設計的。顧名思義它應該用於保存標誌和變量來定製或保存用戶的會話細節。即使核心數據確實爲此提供了一個優雅的解決方案,並且是最高效的解決方案。如果你不想處理這個問題,你將不得不創建自己的文件並將其保存在那裏。這也很簡單。不過我建議coredata,如果你打算擴展可能性,比如多用戶,不同的運行,很多屬性等等,因爲它是一種真正的數據庫方式。

http://www.raywenderlich.com/934/core-data-on-ios-5-tutorial-getting-started

編輯:沒有限制用戶的默認大小。儘管如此,如果你通過蘋果文檔,你會看到它不是爲了你描述的目的。

http://www.iphonedevsdk.com/forum/iphone-sdk-development/38091-size-limitations-with-nsuserdefaults.html

+0

我陷害了。感謝您的反饋意見。我只使用默認值進行測試。謝謝你的鏈接! – random 2012-07-26 02:11:02