相关疑难解决方法(0)

如何使用Android 7牛轧糖让查尔斯代理工作?

Android 7引入了对证书处理方式的一些更改(http://android-developers.blogspot.com/2016/07/changes-to-trusted-certificate.html),不知怎的,我不能让我的Charles代理工作了.

我的network_security_config.xml:

<?xml version="1.0" encoding="utf-8"?>
<network-security-config>
    <base-config>
        <trust-anchors>
            <certificates src="system" />
        </trust-anchors>
    </base-config>
    <debug-overrides>
        <trust-anchors>
            <certificates src="user" />
        </trust-anchors>
    </debug-overrides>
</network-security-config>
Run Code Online (Sandbox Code Playgroud)

我正在调试模式下运行.但不管怎样,我明白了javax.net.ssl.SSLHandshakeException: java.security.cert.CertPathValidatorException: Trust anchor for certification path not found..

不用说,我确实安装了pfx证书Settings -> Security -> Install from storage.证书显示在User Credentials但不在Trusted credentials -> User.在我的棒棒糖设备上,证书列在那里.

我正在使用okhttp3作为HTTP库.

知道我做错了什么吗?

ssl android android-7.0-nougat

93
推荐指数
2
解决办法
4万
查看次数

SSL代理/查尔斯和Android的麻烦

我想使用Charles代理工具测试Android设备的Https调用.我需要查看调试应用程序的原始请求/响应内容.我通过在"代理设置" - > SSL选项卡下添加主机和端口来配置Charles.当我运行应用程序时,所有SSL调用似乎都会从Charles快速消失.有没有人知道如何解决这个问题.Charles文档似乎没有Android设备的信息.

proxy android charles-proxy

59
推荐指数
6
解决办法
11万
查看次数

Android Studio,javax.net.ssl.SSLHandshakeException:不可接受的证书

我正在尝试Android Virtual Device从 Android Studio运行。一切正常,直到我尝试从虚拟设备内部访问任何 Google 服务。我们的网络正在使用公司代理,我们必须安装公司证书才能使应用程序正常工作。我通过 将证书安装到 Java(jdk) keytool -importcert -trustcacerts ...,然后以Android\Android Studio\jre\bin相同的方式安装。然后使用 将证书上传到虚拟机中adb push C:\certs\cert1.cer /sdcard/cert1.cer,并将其应用到 Android 的设置中。但我仍然收到错误

Caused by: javax.net.ssl.SSLHandshakeException: Unacceptable certificate: CN=CompanyName Root CA, OU=IT Department, O='CompanyName Professional' LLC, L=NY, ST=NY, C=EN
Run Code Online (Sandbox Code Playgroud)

无论如何绕过是真的吗?如果我已经导入了证书,为什么它仍然要求提供证书。在浏览器中,如果在虚拟机中打开它,所有网站都可以正常工作。谢谢。

java ssl android android-studio

0
推荐指数
3
解决办法
5366
查看次数