日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 运维知识 > Android >内容正文

Android

Android --- SharedPreferences的详细介绍

發布時間:2025/3/21 Android 25 豆豆
生活随笔 收集整理的這篇文章主要介紹了 Android --- SharedPreferences的详细介绍 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

文章目錄

    • 概念理解:
    • getSharedPreferences 方法介紹
    • 使用SharedPreferences保存key-value鍵值對的步驟如下:
    • 栗子1
    • 栗子2

概念理解:

SharedPreferences 是一個輕量級的存儲類,主要是保存一些小的數據,一些狀態信息.做軟件開發應該都知道,很多軟件會有配置文件,里面存放這程序運行當中的各個屬性值,由于其配置信息并不多,如果采用數據庫來存放并不劃算,因為數據庫連接跟操作等耗時大大影響了程序的效率,因此我們使用鍵值這種一一對應的關系來存放這些配置信息。SharedPreferences正是Android中用于實現這中存儲方式的技術。

SharedPreferences的使用非常簡單,能夠輕松的存放數據和讀取數據。SharedPreferences只能保存簡單類型的數據,例如,String、int等。一般會將復雜類型的數據轉換成Base64編碼,然后將轉換后的數據以字符串的形式保存在 XML文件中,再用SharedPreferences保存。

getSharedPreferences 方法介紹

其中兩個參數的意義為

public SharedPreferences getSharedPreferences(String name, int mode) {return mBase.getSharedPreferences(name, mode); }

name為本組件的配置文件名( 自己定義,也就是一個文件名)

mode為操作模式,默認的模式為0或MODE_PRIVATE,還可以使用MODE_WORLD_READABLE和MODE_WORLD_WRITEABLE

mode指定為MODE_PRIVATE,則該配置文件只能被自己的應用程序訪問。
mode指定為MODE_WORLD_READABLE,則該配置文件除了自己訪問外還可以被其它應該程序讀取。
mode指定為MODE_WORLD_WRITEABLE,則該配置文件除了自己訪問外還可以被其它應該程序讀取和寫入

使用SharedPreferences保存key-value鍵值對的步驟如下:

(1)使用SharedPreferences接口的Editor 獲得SharedPreferences.Editor 對象editor。
代碼實例如下:

private SharedPreferences.Editor editor;

(2)使用Activity類的getSharedPreferences方法獲得SharedPreferences對象,其中存儲key-value的文件的名稱由getSharedPreferences方法的第一個參數指定。
代碼實例如下:

private SharedPreferences preferences; private SharedPreferences.Editor editor;public Sputil(Context context) {preferences = context.getSharedPreferences("com.ihome.za_home.setting", context.MODE_PRIVATE);editor = preferences.edit(); }

(3)通過SharedPreferences.Editor接口的putXxx方法保存key-value 對。其中Xxx表示不同的數據類型。例如:字符串類型的value需要用 putString方法。
代碼實例如下:

public void putString(String key, String value) {editor.putString(key, value);editor.commit(); } public void putBoolean(String key, boolean value) {editor.putBoolean(key, value);editor.commit(); }

(4)通過SharedPreferences.Editor接口的commit方法保存key-value 對。commit方法相當于數據庫事務中的提交(commit)操作。
如(3)所示,直接在內部提交了

栗子1

import android.content.Context; import android.content.SharedPreferences;public class Sputil {private SharedPreferences preferences;private SharedPreferences.Editor editor;public Sputil(Context context) {preferences = context.getSharedPreferences("com.xiaoqinglong.chong", context.MODE_PRIVATE);editor = preferences.edit();}/*** 向SP存入指定key對應的數據* 其中value可以是String、boolean、float、int、long等各種基本類型的值* @param key* @param value*/public void putString(String key, String value) {editor.putString(key, value);editor.commit();}public void putBoolean(String key, boolean value) {editor.putBoolean(key, value);editor.commit();}public void putFloat(String key, float value) {editor.putFloat(key, value);editor.commit();}public void putInt(String key, int value) {editor.putInt(key, value);editor.commit();}public void putLong(String key, long value) {editor.putLong(key, value);editor.commit();}/*** 清空SP里所以數據*/public void clear() {editor.clear();editor.commit();}/*** 刪除SP里指定key對應的數據項* @param key*/public void remove(String key) {editor.remove(key);editor.commit();}/*** 獲取SP數據里指定key對應的value。如果key不存在,則返回默認值defValue。* @param key* @param defValue* @return*/public String getString(String key, String defValue) {return preferences.getString(key, defValue);}public boolean getBoolean(String key, boolean defValue) {return preferences.getBoolean(key, defValue);}public float getFloat(String key, float defValue) {return preferences.getFloat(key, defValue);}public int getInt(String key, int defValue) {return preferences.getInt(key, defValue);}public long getLong(String key, long defValue) {return preferences.getLong(key, defValue);}/*** 判斷SP是否包含特定key的數據* @param key* @return*/public boolean contains(String key){return preferences.contains(key);} }

栗子2

存放數據信息

(1)、打開Preferences,名稱為setting,如果存在則打開它,否則創建新的Preferences

SharedPreferences settings = getSharedPreferences(“setting”, 0);

(2)、讓setting處于編輯狀態

SharedPreferences.Editor editor = settings.edit();

(3)、存放數據

editor.putString(“name”,”ATAAW”); editor.putString(“URL”,”ATAAW.COM”);

(4)、完成提交

editor.commit();

讀取數據信息

(1)、獲取Preferences

SharedPreferences settings = getSharedPreferences(“setting”, 0);

(2)、取出數據

String name = settings.getString(“name”,”默認值”); String url = setting.getString(“URL”,”default”);

就介紹到這里了,有什么不理解的或者是小編有錯誤的地方,都可以在評論區留言,如果對你有益處的話記得收藏哦

總結

以上是生活随笔為你收集整理的Android --- SharedPreferences的详细介绍的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。

主站蜘蛛池模板: 日韩av毛片| 日韩第一页在线观看 | 蜜桃99视频一区二区三区 | 一区二区不卡免费视频 | 日韩在线一二三 | 欧美激情国产在线 | 99国产精品久久久 | 亚洲av中文无码乱人伦在线视色 | 天天久久久 | 日本香蕉视频 | 久久网站av | 中文字幕精品一区二区三区视频 | 蜜乳av中文字幕 | 欧美精品一区二区三区四区五区 | 丰满少妇高潮在线观看 | 日本视频在线看 | 久久久久久久久免费 | 欧美激情 国产精品 | 中文字幕乱码人妻一区二区三区 | 在线爱情大片免费观看大全 | 一久久久久 | 瑟瑟综合网 | 向着小小的花蕾绽放 | 在线免费观看亚洲视频 | 亚洲第一区在线观看 | 欧美黄在线观看 | 激情五月亚洲 | 欧洲av在线播放 | 成人激情片| 色偷av| 国产精品国产一区二区三区四区 | 欧美激情久久久久久 | 在线观看视频中文字幕 | 日韩中出 | 成人有色视频 | 天堂网视频在线观看 | 黄色网址在线免费播放 | 亚洲黄色片在线观看 | 欧美视频第一页 | 国产欧美激情在线观看 | 96福利视频 | 欧美另类精品xxxx孕妇 | 欧美亚洲在线观看 | 欧洲熟妇的性久久久久久 | 波多野结衣久久精品 | 黄色三级图片 | 绿色地狱在线观看 | 92久久精品一区二区 | 黄色网页大全 | 97视频在线观看免费高清完整版在线观看 | 碰碰久久 | 欧洲做受高潮欧美裸体艺术 | 国产精品一区二区三区免费观看 | 久久精品波多野结衣 | 蜜桃久久一区二区三区 | 欧美精品第二页 | 波多野结衣人妻 | 蜜臀av性久久久久av蜜臀妖精 | 在线天堂一区 | 宅男午夜影院 | 青青青手机视频 | www.色香蕉 | 日本一区二区成人 | 大度亲吻原声视频在线观看 | 男女互操| 97精品久久久 | 色综合狠狠 | 亚洲精品嫩草 | 国产精品99久久 | 老司机在线永久免费观看 | 无码一区二区三区在线观看 | 高清视频免费在线观看 | 亚洲第一天堂在线观看 | 国产91一区在线精品 | 亲子乱一区二区三区 | 91丨九色丨国产在线 | 色女人av| 无码精品视频一区二区三区 | 女生脱裤子让男生捅 | av高清| 国产又大又黄又爽 | 四虎在线精品 | 精品国产久 | 中文字幕avav | 最近中文字幕在线mv视频在线 | bt天堂新版中文在线地址 | 成人精品在线观看视频 | 国产日韩欧美在线 | 精品人妻码一区二区三区红楼视频 | 日韩专区在线观看 | 欧美性一区二区 | 国产人妻aⅴ色偷 | 嫩模被强到高潮呻吟不断 | av在线观 | 在线免费看污片 | 欧美偷拍第一页 | 国产精品久久久一区二区 | 国产蜜臀在线 | 青青草日本 |