目录
深入学习DataStore(一),Google为什么放弃SharedPreferences
深入学习DataStore(二),使用 Preferences DataStore存储数据
深入学习DataStore(三),迁移 SharedPreferences 到 DataStore
深入学习DataStore(四),如何使用Proto DataStore数据存储
迁移 SharedPreferences 到 DataStore
DataStore刚刚推出,SharedPreferences目前还是都是在项目中使用,DataStore很贴心的为大家推出了SharedPreferences的迁移方案.
而迁移方案其实也只有2步
(1) 在构建 DataStore 的时候,需要传入一个 SharedPreferencesMigration
dataStore = context.createDataStore(
name = PREFERENCE_NAME,
migrations = listOf(
SharedPreferencesMigration(
context,
SharedPreferencesRepository.PREFERENCE_NAME
)
)
)
(2)构建完可迁入的DataStore之后,我们需要执行一次读取或者写入操作,DataStore 才会自动合并 SharedPreference 文件内容 ,迁入成功后会删除原有的SharedPreferences
SharedPreference的key与DataStore的Key不相同如何
其实大家不用担心这个问题,虽然DataStore使用的 preferencesKey<T>("key")的形式
但是我们迁入时的写入读取操作只需要在key上和SharedPreference保持一致即可
//DataStore的key
preferencesKey<String>("DataStore")
//SP中的key
val KEY_ACCOUNT = "DataStore"
网友评论