瀏覽手機的/data/data/目錄中的各個package的目錄,經常會看到有一個shared_prefs檔案夾,裡面有一個包名_preferences.xml檔案,這個檔案就是要說的主角,下面簡稱他為設定檔;
這個檔案類似於一個設定檔的角色,記錄應用的一些屬性值,比如如果你的應用提供了指導使用者使用的嚮導功能,那麼估計肯定會提供選項讓使用者來關閉這個功能,那麼你可以將這個開關放置在這個檔案裡,下次啟動時通過該值就能做成正確的顯示;
該這個設定檔的操作主要用到兩個類:PreferenceManager和SharedPreferences,SharedPreferences用來具體操作該設定檔,如從檔案中取值,向檔案中寫值等;PreferenceManager負責管理系統所有應用的設定檔,可以使用它通過應用的上下文(Content)輕鬆擷取到該檔案的SharedPreferences對象,如何處理檔案路徑,檔案名稱等他都統一管理了,使用時不用關心;
下面具體講講使用方法:
1、匯入包
import android.content.SharedPreferences;import android.preference.PreferenceManager;
2、得到對象
SharedPreferences mPrefs = PreferenceManager.getDefaultSharedPreferences(this);
3、寫入/更新
SharedPreferences.Editor editor = mPrefs.edit(); editor.putBoolean("pre_key_words", true); editor.commit();
當然這裡也可以寫入其他類型的資料,如putInt,putString,具體可以查看SharedPreferences.java中的方法…
4、取值
boolean checkedKeyWords = mPrefs.getBoolean("pre_key_words", false);
要注意的是,要注意"pre_key_words"在檔案裡自己是設定了什麼樣的值,是boolean的還是String?取值的時候不要用錯了函數,否則一直返回都是第二個參數(預設值)了;
其實SharedPreferences對包名_preferences.xml檔案的讀寫,看起來跟VC等對ini設定檔的讀寫很像啊~