Size: a a a

2020 March 21

KT

Kanat Turganbay in Android KZ
есть вопрос по поводу коина
источник

KT

Kanat Turganbay in Android KZ
val networkModule = module {
   single { createOkHttpClient() }
   single { createWebService<ServerService>(get(), SERVER_URL + API_FOLDER_URL) }
   single { createWebService<UtilServerService>(get(), MAP_URL) }
}
источник

KT

Kanat Turganbay in Android KZ
inline fun <reified T> createWebService(okHttpClient: OkHttpClient, url: String): T {
   val retrofit = Retrofit.Builder()
       .baseUrl(url)
       .client(okHttpClient)
       .addConverterFactory(GsonConverterFactory.create())
       .addCallAdapterFactory(RxJava2CallAdapterFactory.create())
       .build()
   return retrofit.create(T::class.java)
}
источник

KT

Kanat Turganbay in Android KZ
через эту функцию и делаю один объект для коина который называется ServerService
источник

KT

Kanat Turganbay in Android KZ
и такой же объект как ServerService я делаю под названием UtilServerService
источник

KT

Kanat Turganbay in Android KZ
Проблема в том что ServerService сделан и UtilServerService нет
источник

KT

Kanat Turganbay in Android KZ
Подскажите пожалуйста как это решить ?
источник

a

akniyet in Android KZ
В койне должны быть именованные объекты
источник

a

akniyet in Android KZ
В даггере это аннотации @Qualifier или @Named
источник

KT

Kanat Turganbay in Android KZ
типа scope
источник

KT

Kanat Turganbay in Android KZ
?
источник

a

akniyet in Android KZ
Нет, скоуп это другое
источник

a

akniyet in Android KZ
Kanat Turganbay
inline fun <reified T> createWebService(okHttpClient: OkHttpClient, url: String): T {
   val retrofit = Retrofit.Builder()
       .baseUrl(url)
       .client(okHttpClient)
       .addConverterFactory(GsonConverterFactory.create())
       .addCallAdapterFactory(RxJava2CallAdapterFactory.create())
       .build()
   return retrofit.create(T::class.java)
}
источник

VT

Vladimir Tokarev in Android KZ
Kanat Turganbay
Подскажите пожалуйста как это решить ?
источник

VT

Vladimir Tokarev in Android KZ
Зависит от версии коина, в старых нужно просто строку в качестве имени указывать, вместо named("default") - просто "default"
источник

VT

Vladimir Tokarev in Android KZ
Как тут ;)
источник

AB

Alikhan Bakytbek in Android KZ
Vladimir Tokarev
Зависит от версии коина, в старых нужно просто строку в качестве имени указывать, вместо named("default") - просто "default"
это же не то
источник

AB

Alikhan Bakytbek in Android KZ
он через generic создаёт два интерфейса ретрофит
источник

AB

Alikhan Bakytbek in Android KZ
то есть коин должен держать два разных объекта, один ServerService, другой UtilServerService
источник

AB

Alikhan Bakytbek in Android KZ
Vladimir Tokarev
Зависит от версии коина, в старых нужно просто строку в качестве имени указывать, вместо named("default") - просто "default"
а вот это было бы актуально, если он к примеру делал DefaultServerService() as ServerService и CustomServerService() as ServerService
источник