Android crash randomly java.lang.ClassNotFoundException: Didn't find class "android.net.ssl.SSLSockets" on path: DexPathList
Closed this issue · 2 comments
NBminhnv commented
I have encountered crash randomly in Android when using release build. Crash log is listed below
Caused by java.lang.ClassNotFoundException: Didn't find class "android.net.ssl.SSLSockets" on path: DexPathList[[zip file "/data/app/jp.aocca.app-aNLL99geeCYs0djV0O-FyQ==/base.apk"],nativeLibraryDirectories=[/data/app/jp.aocca.app-aNLL99geeCYs0djV0O-FyQ==/lib/arm, /data/app/jp.aocca.app-aNLL99geeCYs0djV0O-FyQ==/base.apk!/lib/armeabi-v7a, /system/lib, /system/vendor/lib]]
at dalvik.system.BaseDexClassLoader.findClass(BaseDexClassLoader.java:134)
at java.lang.ClassLoader.loadClass(ClassLoader.java:379)
at java.lang.ClassLoader.loadClass(ClassLoader.java:312)
at okhttp3.internal.platform.android.Android10SocketAdapter.matchesSocket(Android10SocketAdapter.kt:37)
at okhttp3.internal.platform.Android10Platform.configureTlsExtensions(Android10Platform.kt:51)
at okhttp3.internal.connection.RealConnection.connectTls(RealConnection.kt:375)
at okhttp3.internal.connection.RealConnection.establishProtocol(RealConnection.kt:337)
at okhttp3.internal.connection.RealConnection.connect(RealConnection.kt:209)
at okhttp3.internal.connection.ExchangeFinder.findConnection(ExchangeFinder.kt:226)
at okhttp3.internal.connection.ExchangeFinder.findHealthyConnection(ExchangeFinder.kt:106)
at okhttp3.internal.connection.ExchangeFinder.find(ExchangeFinder.kt:74)
at okhttp3.internal.connection.RealCall.initExchange$okhttp(RealCall.kt:255)
at okhttp3.internal.connection.ConnectInterceptor.intercept(ConnectInterceptor.kt:32)
at okhttp3.internal.http.RealInterceptorChain.proceed(RealInterceptorChain.kt:109)
at okhttp3.internal.cache.CacheInterceptor.intercept(CacheInterceptor.kt:95)
at okhttp3.internal.http.RealInterceptorChain.proceed(RealInterceptorChain.kt:109)
at okhttp3.internal.http.BridgeInterceptor.intercept(BridgeInterceptor.kt:83)
at okhttp3.internal.http.RealInterceptorChain.proceed(RealInterceptorChain.kt:109)
at okhttp3.internal.http.RetryAndFollowUpInterceptor.intercept(RetryAndFollowUpInterceptor.kt:76)
at okhttp3.internal.http.RealInterceptorChain.proceed(RealInterceptorChain.kt:109)
at sns.master.api.ApiClient$1.intercept(ApiClient.java:89)
at okhttp3.internal.http.RealInterceptorChain.proceed(RealInterceptorChain.kt:109)
at okhttp3.internal.connection.RealCall.getResponseWithInterceptorChain$okhttp(RealCall.kt:201)
at okhttp3.internal.connection.RealCall$AsyncCall.run(RealCall.kt:517)
at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1167)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:641)
at java.lang.Thread.run(Thread.java:764)
Environment:
- okhttp version 4.9.3
- minSdkVersion 29
- targetSdkVersion 34
- build release config: release {
minifyEnabled false
proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro'
}
(My proguard-rules.pro is empty) - com.android.tools.build:gradle:7.4.0
- multiDexEnabled true
yschimke commented
That class was added in API 29 / Android 10 - https://developer.android.com/reference/android/net/ssl/SSLSockets
What device reported the error?
It's presumably one of
- a bug causing use of the Android10Platform on Android API < 29
- the device is missing android.net.ssl.SSLSockets
- something else hiding this problem
Without a repro, we can't help. But more information might explain the issue.
yschimke commented
It's also possible there was a bug in 4.9.3 that is now fixed.
If you can get this on a device < API 29, with OkHttp 5, then happy to re-open.