栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 软件开发 > 后端开发 > Java

数据存储之共享参数SharedPreferences

Java 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

数据存储之共享参数SharedPreferences

共享参数

共享参数概述共享参数应用场景

共享参数概述

SharedPreferences是Android的一个轻量级存储工具,采用的存储结构还是我们熟悉的Key-Value的键值对结构,类似于java中的Properties,二者都是把Key-Value的键值对保存在配置文件中。不同的是,Properties的文件内容形如Key=Value,而共享参数SharedPreferences的存储介质是一个xml文件,是用xml的标记保存键值对的。保存共享参数键值对信息的文件路径为:/data/data/应用包名/shared_prefs/文件名.xml。

下面展示一些例子:



    Bin// 注意字母都是小写的
    
    
    

共享参数应用场景

基于xml的特点:

    简单且孤立的数据。若是复杂且相互关联的数据,则要保存关系数据库。文本形式的数据,要是二进制数据,则要保存到文件中。需要持久化存储的数据。App退出后再次启动时,之前保存的数据仍然有效。

实际开发中,共享参数经常存储的数据有:App的个性化配置信息、用户使用App的行为、临时需要保存的片段信息等。

用法如下:

// 从share.xml获取共享参数,第一个参数是文件名,这里share是这个共享参数的文件名,第二个参数是操作的模式,例子中的是私有模式
SharedPreferences sharedPreferences = getSharedPreferences("share",MODE_PRIVATE);

我们通常都不会直接的进行一个调用,把它封装成一个共享参数的工具类,更便于我们后面的使用。

public class ToolKits {
    public static SharedPreferences getSharedPreferences(Context context){
        //设置访问模式为此应用私有访问
        return context.getSharedPreferences("com.lcb.myapplication",Context.MODE_PRIVATE);
    }

    public static void putBooble(Context context,String key,Boolean value){
        SharedPreferences sharedPreferences = getSharedPreferences(context);
        SharedPreferences.Editor editor =sharedPreferences.edit();
        editor.putBoolean(key,value);//通过编辑器提交一个布尔值内容
        editor.commit();//编辑器提交内容
    }

    
    public static boolean fetchBooble(Context context,String key,boolean defaultValue){
       return getSharedPreferences(context).getBoolean(key,defaultValue);
    }

需要提交什么类型的参数,对应使用编辑器的不同的方法,例如,

editor.putInt("age",30);
editor.putString("name","A bin");

获取也是用样的道理,只不过把put前缀改成get前缀,例如,

//第一个参数是key值,第二个参数是一个获取的默认值,就是说,如果里面没有值的话,默认取出来就是你传进去的值。
int age = shared.getInt("age",0);

相信对于聪明的你来说是很简单的推理,就不再列举了。记得最后要进行提交喔!

有兴趣的朋友可以参考上面封装的工具类,来进行一个引导页的运用,即只在第一次打开的时候有引导页,其他时候会直接进入主界面!或者到设置中清除缓存数据,也能重新打开引导页!

转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/703748.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号