Android-SharedPreferences
阿新 • • 發佈:2018-12-16
簡稱Sp,是一種輕量級的資料儲存方式,採用key/value的方式進行對映,最終會在手機的/data/data/package_name/shared_prefs/目錄下以xml的格式存在。Sp通常用於記錄一些引數配置、行為標記等。但是不要使用Sp去儲存大的資料和檔案,否則會大大影響應用效能,甚至出現ANR(Application Not Response)。
獲取Sp的方式
1、呼叫Context物件的getSharedPreferences()方法
2、呼叫Activity物件的getPreferences()方式
兩種方式的區別:
呼叫Context物件的getSharedPreferences()方法獲得的SharedPreferences物件可以被同一應用程式下的其他元件共享。
呼叫Activity物件的getPreferences()方法獲得的SharedPreferences物件只能在該Activity中使用。
Sp的四種操作模式
Context.MODE_PRIVATE
為預設操作模式,代表該檔案是私有資料,只能被應用本身訪問,在該模式下,寫入的內容會覆蓋原檔案的內容。
Context.MODE_APPEND
會檢查檔案是否存在,存在就往檔案追加內容,否則就建立新檔案。
Context.MODE_WORLD_READABLE
表示當前檔案可以被其他應用讀取。
Context.MODE_WORLD_WRITEABLE
表示當前檔案可以被其他應用寫入。
SharedPreferences preferences=getSharedPreferences("user",Context.MODE_PRIVATE); Editor editor=preferences.edit(); String name="xixi"; String age="22"; editor.putString("name", name); editor.putString("age", age); editor.commit(); 從SharedPreferences獲取資料: SharedPreferences preferences=getSharedPreferences("user", Context.MODE_PRIVATE); String name=preferences.getString("name", "defaultname"); String age=preferences.getString("age", "0");