Android SharedPreferences存取操作以及封装详解
存
首先初始化
private SP sp; sp = new SP( context );
存入数据
第一个参数为上下文,第二个参数为key,第三个参数为要存入的数据Value
sp.PutData( context,"AccessToken",AccessToken );
取
初始化
private SP sp; sp = new SP( context );
取出数据
第一个参数为上下文,第二个参数为存入数据时定义的名称,第三个数据为取出数据的默认类型(这个参数很关键,再封装类转换类型时尤为重要)
AccessToken = (String) sp.GetData( context,"AccessToken","" );
封装类
public class SP { private static SP spInstant; private String defaultModelName; public SP(){ } public SP (Context context){ if (spInstant == null){ spInstant = new SP( ); spInstant.defaultModelName = context.getResources().getString( R.string.DefaultModelName ); } } public void PutData(Context context,String key,Object value){ PutData( context,defaultModelName,key,value ); } private void PutData(Context context,String defaultModelName ,String key,Object value){ SharedPreferences preferences = context.getSharedPreferences( defaultModelName,Context.MODE_PRIVATE ); SharedPreferences.Editor editor = preferences.edit(); if (value instanceof Boolean){ editor.putBoolean( key,(Boolean) value ); }else if (value instanceof Integer){ editor.putInt( key,(Integer)value ); }else if (value instanceof Float){ editor.putFloat( key,(Float)value ); }else if (value instanceof Long){ editor.putLong( key,(Long)value ); }else if (value instanceof String){ editor.putString( key,(String)value ); }else{ return; } editor.apply(); } public Object GetData(Context context,String key,Object defaultValue){ return GetData( context,defaultModelName,key,defaultValue); } private Object GetData(Context context,String defaultModelName,String key,Object defaultValue){ SharedPreferences preferences = context.getSharedPreferences( defaultModelName,Context.MODE_PRIVATE ); if (defaultValue instanceof Boolean){ return preferences.getBoolean( key,(Boolean) defaultValue ); }else if (defaultValue instanceof Integer){ return preferences.getInt( key,(Integer) defaultValue ); }else if (defaultValue instanceof Float){ return preferences.getFloat( key,(Float) defaultValue ); }else if (defaultValue instanceof Long){ return preferences.getLong( key,(Long) defaultValue ); }else if (defaultValue instanceof String){ return preferences.getString( key,(String) defaultValue ); }else{ return null; } } }
到此这篇关于Android SharedPreferences存取操作以及封装详解的文章就介绍到这了,更多相关Android SharedPreferences内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!
相关文章
Android viewpager在最后一页滑动之后跳转到主页面的实例代码
这篇文章主要介绍了Android viewpager在最后一页滑动之后跳转到主页面的实例代码的相关资料,需要的朋友可以参考下2016-08-08Android 中ListView点击Item无响应问题的解决办法
如果listitem里面包括button或者checkbox等控件,默认情况下listitem会失去焦点,导致无法响应item的事件,怎么解决呢?下面小编给大家分享下listview点击item无响应的解决办法2016-12-12android中LinearLayoutManager一键返回顶部示例
本篇文章主要介绍了android中LinearLayoutManager一键返回顶部,具有一定的参考价值,感兴趣的小伙伴们可以参考一下。2017-02-02Android中CountDownTimer倒计时器用法实例
这篇文章主要介绍了Android中CountDownTimer倒计时器用法,以实例形式分析了Android中CountDownTimer类的相关使用技巧,具有一定参考借鉴价值,需要的朋友可以参考下2015-10-10Android自定义控件案例汇总1(菜单、popupwindow、viewpager)
这篇文章主要介绍了Android自定义控件案例汇总,优酷菜单、popupwindow实现下拉列表、viewpager实现轮播图,具有一定的参考价值,感兴趣的小伙伴们可以参考一下2016-12-12
最新评论