Мне нужно изменить базу URL-адресов при модернизации, я использую koin для создания модуля модернизации при запуске приложения, и я хочу изменить этот URL-адрес во время выполнения.
Я уже пробовал изменить baseUrl ("http://192.168.192.168/") на baseUrl ("http: / / ") и измените URL-адрес при вызове модернизации, но мое приложение вылетает и возвращает ошибку недопустимого URL-адреса.
Создавать конструктора - это мое развлечение
fun createRetrofit(okHttpClient: OkHttpClient): Retrofit {
return Retrofit.Builder()
.baseUrl("http://192.168.192.168/")//i need change this at runtime
.client(okHttpClient)
.addConverterFactory(GsonConverterFactory.create()) .addCallAdapterFactory(RxJava2CallAdapterFactory.create())
.build()
}
создать bean-компонент для моего модуля
val retrofitModule: Module = applicationContext {
bean { createRetrofit(get()) }
}
и запускаем коин:
startKoin(application = this,
modules = listOf(retrofitModule, ...)
)
кто-нибудь могу мне помочь с этим?