Android开发框架(2)最便捷的 Preference本地储存

EasyAndroid 是一个android完整的安装开发框架,已经应用于几个生产项目。

EasyAndroid 不是脱离其你原来熟悉的开发框架而另起一套,它只是将原来的流程极大地简化,所以他完全兼容其他开发框架。同时也会兼容Google后续的升级。需要的同学可以放心使用。
github地址:https://github.com/chen397254698/EasyAndroid

EasyAndroid

一个完整基于kotlin的安卓开发框架,采用了mvvm设计模式。涵盖了:

1、基于retrofit2封装的通过kotlin协程实现的网络框架

2、基于阿里开源arouter修改的api-router实现项目模块化

3、基于glide的图片加载缓存框架

4、基于room实现的往来数据缓存加载

5、基于step实现的数据异步提交

6、基于PreferenceHolder实现的本地数据快速存储

7、基于mlist实现的简单复杂列表的快速开发扩展等等。。

本框架几乎涵盖了开发所需的所有模块组件。简单fork之后就可以基于框架快速开发。

暂时先提交完整的框架代码,后续要完善本框架的用法。

感谢作者 # MarcinMoskala/PreferenceHolder

PreferenceHolder应该是SharePreference封装的最佳实践了。我只是在此基础上根据项目需求做了简单扩展

新建 BasePreference 继承 PreferenceHolder 然后直接定义需要存储的字段,然后就可以直接使用了,可以直接存储对象,对象会通过Gson序列化,反序列化。

object BasePreference : PreferenceHolder() {

    /**信息存储*/
    var INFO: String? by bindToPreferenceFieldNullable()

    /**下载记录id*/
    var _DOWNLOAD_ID: Long by bindToPreferenceField(0)

    /**下载包名*/
    var _DOWNLOAD_APK_NAME: String? by bindToPreferenceFieldNullable()

    /**状态栏高度*/
    var _STATUS_BAR_HEIGHT: Int by bindToPreferenceField(0)

    /**用户令牌*/
    var USER_TOKEN: String? by bindToPreferenceFieldNullable()

    /**用户id*/
    var USER_ID: String by bindToPreferenceField("")

    /**第一次打开*/
    var _FIRST_START: Boolean by bindToPreferenceField(true)

    /**邀请码 */
    var _INVITE_CODE: String by bindToPreferenceField("")
}

定义一个本地存储变量只需要一行代码,存储的变量默认会缓存。存取也是极其方便。一行代码搞定。

1591500668(1).png

清楚已经存储的内容只需调用clear方法,clear方法默认为安全删除,会保留以 _ 开头命名的变量。也可以强制删除所有。

无Activity,模块化从未如此简单

你可能感兴趣的:(Android开发框架(2)最便捷的 Preference本地储存)