问题描述
我为初始化改造编写了代码以调用Web服务。它可以在所有其他android版本中使用。 我尝试在android 11上运行它,但出现以下错误:-
E/AndroidRuntime: FATAL EXCEPTION: main
Process: com.reswaiter,PID: 6102
java.lang.ExceptionInInitializerError
val client = OkHttpClient.Builder()
.connectTimeout(TIMEOUT.toLong(),TimeUnit.MILLISECONDS)
.readTimeout(TIMEOUT.toLong(),TimeUnit.MILLISECONDS)
.addInterceptor(logging)
.addInterceptor(interceptor)
.build()
client.connectTimeoutMillis
val retrofit = Retrofit.Builder()
.baseUrl(api_url)
.addConverterFactory(GsonConverterFactory.create())
.client(client)
.build()
解决方法
此解决方案是我将app.gradle中的目标sdk从30更改为29 ,并且效果很好。
defaultConfig {
applicationId "com.reswaiter"
minSdkVersion 21
targetSdkVersion 29
versionCode 1
versionName "1.0"
testInstrumentationRunner "androidx.test.runner.AndroidJUnitRunner"
}
,
我在 Retrofit 中遇到了类似的错误。将改造更新到 2.8.1 对我有用。
implementation 'com.squareup.retrofit2:retrofit:2.8.1'
implementation 'com.squareup.retrofit2:converter-gson:2.8.1'