安卓使用SharedPreferences和bundle存储用户数据

安卓使用SharedPreferences和bundle存储用户数据

SharedPreferences存储

SharedPreferences 是 Android 系统提供的一个通用的数据持久化框架,用于存储和读取 key-value 类型的原始基本数据对。

目前仅支持 boolean、float、int、long 和 string 等基本类型的存储,对于自定义的复合数据类型,是无法使用 SharedPreferences 进行存储的。

存储方式:

SharedPreferences setInfo= getActivity().getSharedPreferences("config",Context.MODE_MULTI_PROCESS);//config是存储的key
setInfo.edit()
        .putString("trait",persion.getTrait()+"")
        .putString("idName",persion.getIdName())
        .putString("id",persion.getId())
        .putString("fanNum", persion.getFanNum())
        .putString("followNum", persion.getFollowNum())
        .putString("likeNum", persion.getLikeNum())
        .commit();

读取方式:

SharedPreferences sharedPreferences= getActivity().getSharedPreferences("config", Context.MODE_PRIVATE);
String str=sharedPreferences.getString("idName","");

sharedPreference可以被覆盖,且一旦存储会一直存在,除非将app卸载。

bundle存储

在做activity之间或者与Fragment之间的跳转的时候可以使用bundle传递数据,并且bundle可以存储自定义的数据,在这里我定义的person类,通过bundle传递,在这里我做了fragment之间的切换。

bundle.putSerializable("persion",persion);
FragmentManager fragmentManager = getFragmentManager();
SettingFragment sf=new SettingFragment();
sf.setArguments(bundle);
fragmentManager.beginTransaction().replace(R.id.fl_main,sf).commit();

读取数据:

Bundle bundleId=getArguments();
user=(user) bundleId.getSerializable("persion");
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值