Preferences

Preferences 是一種輕量級的存儲方式,主要是存放一些配置之類的信息;以鍵值對的形式保存在手機內存中,做爲一種xml系統文件保存。因此,在數據量不是很大的狀況下是能夠用Preferences來保存你所須要的鍵值對信息的;常見的用法是用來保存{用戶名,密碼}等的信息;舉個例子:在我正在作的項目中,須要用到請求服務器返回的數據,經過json解析處理後獲得{key, value}的數據,多是由於方便存取,因此把它們都用Preferences來處理;可是,項目負責人提醒我,手機自己的內存是很小的,而咱們請求回來的是一坨大數據,雖然Preferences處理方便,可是,手機內存減小了,程序運行速度會變慢;因此得改用其餘的存儲方式將數據存在sdcard上。 json

一堆廢話以後,讓我來介紹下Preferences的用法: 服務器

一、獲取Preferences對象:SharedPreferences settings = getSharedPreferences(Config.CONFIG_NAME, Context.MODE_PRIVATE); 大數據

第一個參數是打開的文件名稱(自定義),如你想把你的數據保存在wokao.xml文件裏,wokao就是你定義的文件名;第二個參數爲訪問Preferences的模式:MOED_PRIVATE:私有模式,只能由建立者訪問;MODE_WORLD_READABLE:容許因此應用讀取;MODE_WORLD_WRITEABLE:容許因此應用寫;咱們通常使用MOED_PRIVATE模式,只容許本應用讀寫此文件; xml

二、讀取Preferences文件的內容:在第一步得到Preferences對象以後,咱們才能獲取xml文件內容; 對象

如:String res = settings.getString("nihao");咱們不須要對文件作什麼格式轉換的操做,直接根據key值讀取value值就好了,由於在鍵值對中,key值是獨一無二的標識;根據value值的類型,可使用如getInt()等方法來得到value值; 內存

三、更新Preferences文件內容; get

如:setting.edit().putString("nihao", "wo hen hao").commit();更新Preferences的內容必須使用edit()和commit()方法,具體解釋記不起來了,大家能夠上網查;{"nihao", "wo hen hao"}鍵值對若是在Preferences文件中不存在key = 「nihao」, 會把鍵值對加入文件,若是存在key = "nihao",系統會把value值修改成value =  "wo hen hao"; it

至此,Preferences的操做已完成;應用創建的Preferences的xml文件會一直保存在手機系統的data/data/com.preferences/ shared-prefs/目錄下,伴隨應用被卸載而刪除,因此說,使用Preferences保存數據是佔內存的,若是數據量大,不推薦使用。 配置

相關文章
相關標籤/搜索