【发布时间】:2020-06-23 00:21:36
【问题描述】:
所以我需要在请求超时时显示特定屏幕。我正在使用此代码来启动改造
object RetrofitServiceGenerator {
private val loggingInterceptor = HttpLoggingInterceptor().setLevel(HttpLoggingInterceptor.Level.BODY)
private val okHttpClient = OkHttpClient.Builder()
.callTimeout(7, TimeUnit.SECONDS)
.addInterceptor(loggingInterceptor)
.build()
private var retrofit = Retrofit.Builder()
.baseUrl(BASE_URL)
.addConverterFactory(GsonConverterFactory.create())
.client(okHttpClient)
.build()
fun <T> getInstance(APIType: Class<T>) : T {
return retrofit.create(APIType)
}
}
所以 7 秒后,我想显示一个特定的屏幕,但问题是,我不知道,如果我的代码中存在请求超时,我何时收到通知。例如在我下面的代码中
val call = restaurantService.getRestaurantDetail(restaurantID)
call.enqueue(object: Callback<Restaurant>{
override fun onFailure(call: Call<Restaurant>, t: Throwable) {
}
override fun onResponse(call: Call<Restaurant>, response: Response<Restaurant>) {
}
})
java 或者 kotlin 都可以
【问题讨论】:
-
这是你想要的答案吗?stackoverflow.com/questions/29921667/…