2012-03-22 65 views
3

在我的應用程序中,我使用PreferenceActivity框架來存儲持久性數據。我的意圖是創建多個保存文件,所有這些文件都可以由Preference訪問,但一次只能訪問一個。SharedPreferences與私人文件

什麼時候使用Context.openFileOutput()產生的私人文件以何時更好地使用SharedPreferences

編輯
我的數據僅存在於基元中。

回答

1

通常開發人員使用一個使用getDefaultSharedPreferences的整個應用程序通用的首選項文件。

但是,Android在Context中有一個getSharedPreferences(String name, int mode)方法。您可以使用它來獲得多個首選項文件,通過使用傳遞給參數name的唯一名稱來保存文件。

對於波動性,可以強制偏好經由edit()得到一個Editor,然後調用commit()保存。

請務必注意,SharedPreferences的確會基於共同的name

檢索並按住喜好文件的內容「姓名」,返回SharedPreferences,通過它可以檢索和修改其值。只有一個SharedPreferences對象的實例返回給同一名稱的任何調用者,這意味着他們一旦創建就會看到對方的編輯。

+0

因此,如果我使用'SharedPreferences',那麼數據的安全性就沒有問題了? – gobernador 2012-03-22 02:26:05

+0

你在尋找什麼樣的安全性?你的問題中沒有提到安全性。 – louielouie 2012-03-22 02:35:52

+0

我會檢查你可以打開'SharedPreferences'的模式。看到這裏:http://developer.android.com/reference/android/content/Context.html#MODE_PRIVATE – Benoir 2012-03-22 03:41:54