Android Emulator "Chain Validation Failed"将开发人员机器与自签名证书连接起来

标签 android ssl android-emulator ssl-certificate

我有一个调用基于 Web 的 API 服务的 Android Studio 项目。当服务代码在 dev、qa、prod 等中时。没有证书问题,但是当尝试点击 web api 开发人员框以测试新功能/错误修复/等时。我得到:

No reply because of error:

javax.net.ssl.SSLHandshakeException: Chain validation failed

at com.android.org.conscrypt.OpenSSLSocketImpl.startHandshake(OpenSSLSocketImpl.java:361)

我有从服务开发人员机器导出的自签名证书,没有私钥 DER 编码。我掉到模拟器上,它“安装”了,但这不起作用。

我将上面的相同证书复制到模拟的 sd 卡上。然后从模拟器中的安全设置安装。结果相同。链验证失败。

现在我的安全/证书知识非常基础。我认为错误实际上描述了问题。自签名证书中没有链......但我可能是错的。

无论如何,我该如何解决这个问题?

我希望能够运行我的 Android 代码并点击开发人员框进行测试/调试等。

我读过这样的帖子只是为了让我的公司环境阻止开放 SSL 等网站。

https://android.stackexchange.com/questions/61540/self-signed-certificate-install-claims-success-but-android-acts-as-if-cert-isn

我正在通过 WebView 访问服务。

最佳答案

导致此问题的原因可能是设备的日期时间错误

关于Android Emulator "Chain Validation Failed"将开发人员机器与自签名证书连接起来,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/45923747/

相关文章:

Android 9 补丁可绘制文件

android - 使用 Xamarin.Auth 的谷歌身份验证

PHP : Fastest way to load images through a proxy

android - 解析错误 - 以编程方式安装 apk

android - 墙纸更换事件

android - 更改语言设置后 Android 应用中的空指针异常

android - 如何在 Android 设备上安装受信任的 CA 证书?

ssl - 从 TLS 客户端 hello 中提取服务器名称指示 (SNI)

android - 通过 btn 单击启动 Android 默认电子邮件应用程序

android - 将现有的 Android 模拟器 (AVD) 移动到 Docker 容器