Skip to content

Commit 1bbfa6a

Browse files
committed
Caused by java.security.KeyManagementException: java.security.KeyStoreException: BKS not found
1 parent e0ab1c8 commit 1bbfa6a

File tree

1 file changed

+5
-2
lines changed

1 file changed

+5
-2
lines changed

app/src/main/java/com/ismartcoding/plain/api/HttpClientManager.kt

Lines changed: 5 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -25,6 +25,7 @@ import java.security.SecureRandom
2525
import java.security.cert.X509Certificate
2626
import java.util.concurrent.TimeUnit
2727
import javax.net.ssl.SSLContext
28+
import javax.net.ssl.KeyManager
2829
import javax.net.ssl.TrustManager
2930
import javax.net.ssl.X509TrustManager
3031

@@ -79,7 +80,8 @@ object HttpClientManager {
7980
val insecureSocketFactory =
8081
SSLContext.getInstance("TLSv1.2").apply {
8182
val trustAllCerts = arrayOf<TrustManager>(naiveTrustManager)
82-
init(null, trustAllCerts, SecureRandom())
83+
// Avoid triggering default KeyManager lookup (which can require BKS on some devices)
84+
init(arrayOf<KeyManager>(), trustAllCerts, SecureRandom())
8385
}.socketFactory
8486

8587
sslSocketFactory(insecureSocketFactory, naiveTrustManager)
@@ -133,7 +135,8 @@ object HttpClientManager {
133135
override fun getAcceptedIssuers(): Array<X509Certificate> = arrayOf()
134136
})
135137
val sslContext = SSLContext.getInstance("TLS")
136-
sslContext.init(null, trustAllCerts, SecureRandom())
138+
// Avoid default KeyManager to prevent KeyStoreException: BKS not found
139+
sslContext.init(arrayOf<KeyManager>(), trustAllCerts, SecureRandom())
137140
val sslSocketFactory = sslContext.socketFactory
138141

139142
return OkHttpClient.Builder()

0 commit comments

Comments
 (0)