前述:mmkv是腾讯开源的持久化第三方库,可以用来替代以往的SP,性能大大的好,使用方法如下。
1.添加依赖:implementation 'com.tencent:mmkv-static:1.1.2'
这里使用static可以减少库的大小。
2.在application中初始化mmkv,可以新建一个application
class MyApplication : Application() {
override fun onCreate() {
super.onCreate()
application = this
//applicatio的初始化
val rootDir = MMKV.initialize(this)
Log.d("test","rootDir:"+rootDir)
}
companion object{
private var application:MyApplication? = null
fun getInstance():MyApplication{
return application!!
}
}
}
打印log为rootDir:/data/user/0/com.example.architectrue/files/mmkv
注意在manifest.xml中修改启动的application name属性,对应MyApplication
<application
android:name=".MyApplication"
******
3.测试一下吧
var mmk = MMKV.defaultMMKV()
var isfirst= mmk.decodeBool("isFirst")
if(isfirst){
//
Log.d("test","app is not first start")
}else{
mmk.encode("isFirst",true)
Log.d("test","app is first start")
}
最后,可以移植以前的SP,调用importFromSharedPreferences即可,参数为你的sp对象。