我正在尝试使用 Kotlin 序列化和 Hilt 来实现 Proto Datastore。
参考:https ://medium.com/androiddevelopers/using-datastore-with-kotlin-serialization-6552502c5345
我无法使用新的 DataStore 创建语法注入 DataStore 对象。
@InstallIn(SingletonComponent::class)
@Module
object DataStoreModule {
@ExperimentalSerializationApi
@Singleton
@Provides
fun provideDataStore(@ApplicationContext context: Context): DataStore<UserPreferences> {
val Context.dataStore: DataStore<UserPreferences> by dataStore(
fileName = "user_pref.pb",
serializer = UserPreferencesSerializer
)
return dataStore
}
}
我收到了 lint 消息Local extension properties are not allowed
如何注入这个 Kotlin 扩展属性?或者有什么方法可以注入 dataStore 对象?