資源描述:
《Android數(shù)據(jù)存儲(chǔ)之SharedPreferences》由會(huì)員上傳分享,免費(fèi)在線閱讀,更多相關(guān)內(nèi)容在教育資源-天天文庫。
1、Android數(shù)據(jù)存儲(chǔ)之SharedPreferences前一段時(shí)間因?yàn)閷W(xué)業(yè)關(guān)系都太忙了,最近好不容易閑下來了,盡管如此,但是自己還是有很多東西要學(xué)習(xí),不過在5月份之前,擺在我面前的最重要的兩件事是Android的學(xué)習(xí)和Java網(wǎng)絡(luò)編程的學(xué)習(xí)。說起來Android開發(fā),從去年8月份開始學(xué)習(xí),直到現(xiàn)在都有9個(gè)月了,如果讓我這9個(gè)月啥都不做,我一定可以在這一領(lǐng)域小有成績(jī)的,可惜的是上個(gè)學(xué)期的課實(shí)在太多了,沒辦法擠出系統(tǒng)的時(shí)間好好學(xué)習(xí),以至于直到現(xiàn)在Android開發(fā)還是半生不熟,好在現(xiàn)在終于可以閱讀官方文檔,將以前學(xué)習(xí)到的零散的知識(shí)一點(diǎn)一點(diǎn)地串聯(lián)想來了。在開始總結(jié)數(shù)據(jù)庫開發(fā)之前,有件事不得不說,
2、我目前手頭有三本關(guān)于Android開發(fā)的書,分別是《Android開發(fā)入門與實(shí)戰(zhàn)》、《AndroidSDK開發(fā)范例大全》和《Android應(yīng)用開發(fā)揭秘》,前兩本書是我自己買的,第三本是參加活動(dòng)得到的獎(jiǎng)品??傮w來說第一本還是不錯(cuò)的,只是錯(cuò)誤太多,很多知識(shí)點(diǎn)都講不到,第二本沒怎么看,權(quán)當(dāng)參考書了,第三本書重點(diǎn)在對(duì)動(dòng)畫和游戲方面涉及了很多,我只看過一總分,當(dāng)后來閱讀官方文檔時(shí),才發(fā)現(xiàn)第三本書就我所看過的,全是在翻譯官方文檔,不知道我沒看過的會(huì)怎么樣。我建議,以后學(xué)習(xí)的時(shí)候,如果有官方文檔,一定要優(yōu)先讀官方文檔,不要怕有英文,你可以像我這樣開著靈格斯,哪個(gè)單詞不懂,就查一下,很容易理解的。Share
3、dPreferences是以鍵值對(duì)來存儲(chǔ)應(yīng)用程序的配置信息的一種方式,它只能存儲(chǔ)基本數(shù)據(jù)類型。一個(gè)程序的配置文件僅可以在本應(yīng)用程序中使用,或者說只能在同一個(gè)包內(nèi)使用,不能在不同的包之間使用。實(shí)際上SharedPreferences是采用了XML格式將數(shù)據(jù)存儲(chǔ)到設(shè)備中,在DDMS中的FileExplorer中的/data/data//shares_prefs下。以下表格為獲取SharedPreferences對(duì)象的兩個(gè)方法:返回值函數(shù)備注SharedPreferencesContext.getSharedPreferences(Stringname,intmode)n
4、ame為本組件的配置文件名(如果想要與本應(yīng)用程序的其他組件共享此配置文件,可以用這個(gè)名字來檢索到這個(gè)配置文件)。mode為操作模式,默認(rèn)的模式為0或MODE_PRIVATE,還可以使用MODE_WORLD_READABLE和MODE_WORLD_WRITEABLE。SharedPreferencesActivity.getPreferences(intmode)配置文件僅可以被調(diào)用的Activity使用。mode為操作模式,默認(rèn)的模式為0或MODE_PRIVATE,還可以使用MODE_WORLD_READABLE和MODE_WORLD_WRITEABLE。如果要讀取配置文件信息,只需要直接使
5、用SharedPreferences對(duì)象的getXXX()方法即可,而如果要寫入配置信息,則必須先調(diào)用SharedPreferences對(duì)象的edit()方法,使其處于可編輯狀態(tài),然后再調(diào)用putXXX()方法寫入配置信息,最后調(diào)用commit()方法提交更改后的配置文件。以下是示例代碼:importandroid.app.Activity;importandroid.content.SharedPreferences;publicclassCalcextendsActivity{publicstaticfinalStringPREFS_NAME="MyPrefsFile";...@Over
6、rideprotectedvoidonCreate(Bundlestate){super.onCreate(state);...//載入配置文件SharedPreferencessettings=getSharedPreferences(PREFS_NAME,0);//或者使用SharedPreferencessettings=getPreferences(0);booleansilent=settings.getBoolean("silentMode",false);setSilent(silent);}@OverrideprotectedvoidonStop(){super.onStop
7、();//寫入配置文件。可以使用SharedPreferences.Editor來輔助解決。SharedPreferencessettings=getSharedPreferences(PREFS_NAME,0);SharedPreferences.Editoreditor=settings.edit();editor.putBoolean("silentMode",mSilentMode);editor.c