XSharedPref,适用于多进程的SharedPreferences

SharedPreferences底层是操作xml文件。在多进程中,每个进程都有一份SharedPreferences,因此SharedPreferences不能直接在多进程通信。为了解决此问题,将SharedPreferences的操作放在一个单独的进程中,其他进程使用ContentProvider对它进行操作,XSharedPref由此产生。

我的Android修仙系列前两弹:
XRecyclerView,一个库搞定recyclerview
XRichText,适合富文本的TextView

欢迎star、fork,提出意见。

两个部分

  • SharedPrefProvider 继承了ContentProvider,实现对SharedPreferences的基本操作。
  • XSharedPref SharedPreferences使用工具类,其Api类似SharedPreferences。主要实现了:
    • getString
    • getInt
    • getLong
    • getFloat
    • getBoolean
    • putString
    • putInt
    • putLong
    • putFloat
    • putBoolean
    • remove
    • clear
    • contains
      等基本操作,您可以根据自己的实际情况进行扩展。

使用用法

  1. gradle配置
    compile 'cn.droidlover:xsharedpref:1.0.0'

  2. AndroidManifest.xml配置ContentProvider

     <provider
            android:name=".SharedPrefProvider"
            android:authorities="cn.droidlover.xsharedpref.sp"
            android:process=":xSharedPref" />
    

    process配置进程名称

  3. 使用XSharedPref提供的api

     XSharedPref.putString(this, "github_name", "https://github.com/limedroid");
     String gitName = XSharedPref.getString(this, "github_name", null);
    

    其他的api操作也如上所述.

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • Spring Cloud为开发人员提供了快速构建分布式系统中一些常见模式的工具(例如配置管理,服务发现,断路器,智...
    卡卡罗2017阅读 134,915评论 18 139
  • Android 自定义View的各种姿势1 Activity的显示之ViewRootImpl详解 Activity...
    passiontim阅读 173,242评论 25 708
  • afinalAfinal是一个android的ioc,orm框架 https://github.com/yangf...
    passiontim阅读 15,513评论 2 45
  • 元宵节,阳历算法,沐曦半岁之后第一天。 月上柳梢头,人约黄昏后。相比2.14,比较赞同元宵节。你会挽着我的衣袖,我...
    小兮妈阅读 301评论 0 0
  • 小时候过新年都是在农历腊月三十,凑巧又还是我的生日,所以会有更多期盼,想得到什么礼物又或是谁谁的祝福。等慢慢长大了...
    骑猪猪看夕阳阅读 251评论 0 0