我需要在改造中更改 URL 库,我正在使用 koin 在应用程序启动时创建改造模块,我想在运行时更改此 url。
我已经尝试将 baseUrl(" http://192.168.192.168/ ") 更改为 baseUrl("http://") 并在改造调用时更改 url,但我的应用程序崩溃并返回非法 URL 错误。
这是我创建builder的乐趣
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()) }
}
并开始 koin:
startKoin(application = this,
modules = listOf(retrofitModule, ...)
)
有人可以帮我吗?