kotlin - Koin 中 Dagger 的 @Named 是什么?

标签 kotlin koin

我正在将应用程序从 Dagger2 移动到 Koin,并且需要在 dagger 下进行转换

@Provides
@Singleton
@Named("refresh")
fun provideRefreshRetrofit(@Named("refresh") okHttpClient: OkHttpClient, gson: Gson): Retrofit {/*...not important...*/}

直到现在:
single<Retrofit> { /*....*/ }

但我需要在同一个模块中有类似的条目。是一种转换/解决/解决方法吗?

最佳答案

docs .您可以为定义命名

single(name="refresh") { Retrofit.Builder().build() }

并使用它
factory { ClassThatDependsOnRefresh(get("refresh")) } 

此处仅以 single 和 factory 作为示例。

关于kotlin - Koin 中 Dagger 的 @Named 是什么?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/52272307/

相关文章:

Java8 中 Optional::map 的 Kotlin 等价物

kotlin - IntelliJ 编译器关于为 varargs 传播空数组的警告

android - 如何修复 Koin lib 中的 "No compatible definition found for type ' 上下文?

testing - Koin 模拟暂停功能

android - 处理基础 fragment 中的 Koin(模块已加载错误)

android - 解析来自 firestore 的响应不起作用

java - 如何使用 Java 中的具体泛型调用 Kotlin 方法?

android - Koin 如何在 Android Activity/appcompatactivity 之外注入(inject)

java - 我可以从 Java 使用 Koin 的 'by sharedViewModel' 吗?

android - 使用导航组件移动到新 fragment 时出错