編輯:關於android開發
Android數據存儲方式有如下四種:SharedPreferences、存儲到文件、SQLite數據庫、內容提供者(Content provider)、存儲到網絡服務器。
本文主要介紹一下SharedPreferences
本文地址:http://www.cnblogs.com/wuyudong/p/5939872.html,轉載請注明出處。
如何保存軟件配置參數?
Window: 采用ini文件進行
J2SE應用: 采用properties屬性文件
Android平台:提供一個SharedPreferences類,它是一個輕量級的存儲類,適合用於保存軟件配置參數。
使用SharedPreferences保存數據,其背後是用xml文件存放數據,文件存放在/data/data/<packagename>/shared_prefs目錄下
SharedPreferences接口
SharedPreferences接口主要負責讀取應用程序的Preferences數據,它提供了如下常用方法來訪問SharedPreferences的key_value鍵值對
方法名稱 描述 public abstract boolean contains (String key) 判斷SharedPreferences是否包含特定key的數據 public abstract SharedPreferences.Editor edit () 返回一個Edit對象用於操作SharedPreferences public abstract Map<String, ?> getAll () 獲取SharedPreferences數據裡全部的key-value對 getXXX(String key,XXX defvlaue) 獲取SharedPreferences數據指定key所對應的value,如果該key不存在,返回默認值defValue。其中XXX可以是boolean、float、int、long、String等基本類型的值Editor接口
由於SharedPreference是一個接口,而且在這個接口裡並沒有提供寫入數據和讀取數據的能力。但是在其內部有一個Editor內部的接口,Edit這個接口有一系列的方法用於操作SharedPreference。
方法名稱 描述 public abstract SharedPreferences.Editor clear () 清空SharedPreferences裡所有的數據 public abstract boolean commit () 當Editor編輯完成後,調用該方法可以提交修改,而且必須要調用這個數據才修改 public abstract SharedPreferences.Editor putXXX (String key, boolean XXX) 向SharedPreferences存入指定的key對應的數據,其中XXX可以是boolean、float、int、long、String等基本類型的值 public abstract SharedPreferences.Editor remove (String key) 刪除SharedPreferences裡指定key對應的數據項SharedPreferences存儲數據
SharedPreferences sharedPreferences = getSharedPreferences("wyd001", Context.MODE_PRIVATE); Editor editor = sharedPreferences.edit();//獲取編輯器 editor.putString("name", "wyd"); editor.putInt("age", 22); editor.commit();//提交修改
生成的wyd001.xml文件內容如下:
<?xml version=“1.0” encoding=“utf-8” standalone=“yes” ?> <map> <string name="name">wyd</string> <int name="age" value=“22" /> </map>
SharedPreferences操作模式
getSharedPreferences(na, memode)方法
參數1:指定該文件名稱,名稱不用帶後綴。
參數2:指定文件的操作模式,共有四種操作模式。
Context.MODE_PRIVATE:為默認操作模式,代表該文件是私有數據,只能被應用本身訪問,在該模式下,寫入的內容會覆蓋原文件的內容,如果想把新寫入的內容追加到原文件中。可以使用Context.MODE_APPEND
Context.MODE_APPEND:模式會檢查文件是否存在,存在就往文件追加內容,否則就創建新文件。
Context.MODE_WORLD_READABLE和Context.MODE_WORLD_WRITEABLE用來控制其他應用是否有權限讀寫該文件。
MODE_WORLD_READABLE:表示當前文件可以被其他應用讀取;MODE_WORLD_WRITEABLE:表示當前文件可以被其他應用寫入。
getPreferences(mode)方法操作SharedPreferences,這個方法默認使用當前類不帶包名的類名作為文件的名稱。
訪問SharedPreferences數據
訪問SharedPreferences中的數據代碼如下:
SharedPreferences sharedPreferences = getSharedPreferences("wyd001", Context.MODE_PRIVATE); //getString()第二個參數為缺省值,如果preference中不存在該key,將返回缺省值 String name = sharedPreferences.getString("name", ""); int age = sharedPreferences.getInt("age", 1);
Android Ndk中C與JAVA之間的互相調用 本例實現一個簡單的場景: 1、使用C編寫一個方法,接收1個參數,方法中調用Java的方法。 2、Java類中編寫一
WebView線性進度條,webview線性參考:http://www.cnblogs.com/hubli/p/4835549.html APP會跳轉網頁時候,請參考:h
Android 動態創建Fragment,androidfragmentFragment是activity的界面中的一部分或一種行為。可以把多個Fragment組合到一個
《Android源碼設計模式解析與實戰》讀書筆記(十六) 第十六章、訪問者模式 訪問者模式是一種行為型模式,它是23種設計模式中最復雜的一個,雖然使用頻率不高,但是並