繁体   English   中英

Android Studio 3的代理问题

[英]Proxy issue with Android Studio 3

我对Android Studio代理有一个疯狂的问题。

到目前为止,我正在使用Android Studio 2.3.1,并且代理可以正常工作(我必须使用具有身份验证的代理)。 在Android Studio的“设置”菜单中,有一个“检查连接”按钮。 表示连接成功。

昨天,我已移至Android Studio 3.1.4。 使用此版本,代理身份验证始终失败,并显示错误407:

Unable to tunnel through proxy. Proxy returns "HTTP/1.1 407 Proxy Authentication Required"

我尝试了很多事情都没有成功。 这里找到最有前途的一个:

Java 8 Update 111中的更改​​:现在,默认情况下,在设置HTTPS隧道时需要基本身份验证的代理将不再成功。 如果需要,可以通过从jdk.http.auth.tunneling.disabledSchemes网络属性中删除Basic或在命令行上将同名的系统属性设置为“”(空)来重新激活此身份验证方案。

我已遵循建议,并编辑了net.properties文件,以删除“ jdk.http.auth.tunneling.disabledSchemes”末尾的“基本”一词,但问题仍然存在。

然后,我又回到了Android Studio 2.3.1,可以看到代理正在工作。 我想知道Android Studio 3.1.4怎么了,我被卡住了:o(

顺便说一句,我在Ubuntu 16.04上,并且我正在使用Oracle的Java8(/ usr / lib / jvm / java-8-oracle)

感谢您的任何建议。

为了使Android Studio 3.2与ZScaler Proxy配合使用,我必须做三件事:

1. gradle.properties:

到目前为止,我们习惯于每个项目使用一个“ gradle.properties»文件。 现在,“。gradle”目录中有一个全局目录。 检查它是否包含有关代理的正确信息。

2.证书:

我遵循 https://sacha-k.github.io/2017/04/18/Android-Studio-behind-Zscaler.html上的一些有用提示

我已经从Chrome下载了ZScaler证书(以“ Base-64编码的X.509” .cer格式导出)。 在文件浏览器中,转到Android Studio目录,然后进入jre / bin子目录:

keytool.exe -import -alias Zscaler -file C:\Zscaler.cer -keystore ../jre/lib/security/cacerts

注意:证书存储的默认密码是“ changeit”

对每个ZScaler证书执行相同的操作。

3. net.properties

Quote:“现在,默认情况下,在为HTTPS设置隧道时需要基本身份验证的代理将不再成功。 如果需要,可以通过从jdk.http.auth.tunneling.disabledSchemes网络属性中删除“基本”来重新激活此身份验证方案。

Android Studio不使用您计算机上存在的系统JRE,而是嵌入其自己的JRE版本。 在Android Studio目录中,转到jre / jre / lib并打开文件“ net.properties”。 编辑此文件并删除单词“基本”:

  #jdk.http.auth.proxying.disabledSchemes=
  jdk.http.auth.tunneling.disabledSchemes=basic

经过所有这些更改,我现在可以使代理与Android Studio 3一起使用。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM