Android Studio 3.1代理配置问题:无法为Git操作设置HTTPS用户密码
解决Android Studio 3.1中HTTPS代理密码配置被清空的问题
我刚巧也碰到过这个糟心的问题!AS 3.1确实做了针对性的安全调整——官方就是为了避免明文密码暴露在全局gradle.properties这种易被访问的文件里,才会自动清空systemProp.https.proxyPassword这类敏感配置项。结合你要完成Git操作的需求,给你几个靠谱的解决思路:
方法1:直接用Git自身配置代理(最推荐)
既然核心需求是Git操作,完全可以绕开Gradle的配置,直接给Git设置代理,还能更安全地管理密码:
方式A:临时明文配置(不推荐长期用)
打开终端执行以下命令,把代理地址、端口、用户名密码直接配置到Git全局设置里:
git config --global https.proxy https://你的用户名:你的密码@代理地址:代理端口
验证配置是否生效可以用:
git config --global --get https.proxy
方式B:用Git凭据助手存储密码(安全省心)
为了避免明文存密码,推荐用Git自带的凭据助手,不同系统配置略有差异:
- 先配置代理(只填用户名,不写密码):
git config --global https.proxy https://你的用户名@代理地址:代理端口
- 配置对应系统的凭据助手:
- Windows:
git config --global credential.helper wincred - MacOS:
git config --global credential.helper osxkeychain - Linux:
git config --global credential.helper libsecret
- Windows:
- 第一次执行Git操作时,终端会提示输入密码,输入后Git会自动把密码存在系统凭据存储里(比如Windows的凭据管理器、Mac的钥匙串),之后就不用再手动输入了。
方法2:通过环境变量间接配置Gradle代理(如果需要Gradle也用代理)
如果同时需要Gradle构建也走代理,又不想密码被清空,可以把密码存在系统环境变量里,再在gradle.properties中引用:
- 在系统中添加环境变量,比如命名为
HTTP_PROXY_PASSWORD,值设为你的代理密码; - 在全局或项目级的
gradle.properties中写入:
systemProp.https.proxyHost=你的代理地址 systemProp.https.proxyPort=代理端口 systemProp.https.proxyUser=你的用户名 systemProp.https.proxyPassword=${HTTP_PROXY_PASSWORD}
这样AS不会清空这个配置,因为它不是明文密码,而是引用了环境变量。
方法3:通过Android Studio UI配置代理
打开AS的File > Settings,搜索HTTP Proxy:
- 选择
Manual proxy configuration,填入代理主机、端口; - 在
Proxy authentication区域输入用户名和密码; - 切换到
Version Control > Git,勾选Use credential helper,让Git继承AS的凭据管理。
这种方式也能避免明文存储密码,AS会把凭据存在安全的地方,同时Git和Gradle都能使用代理配置。
内容的提问来源于stack exchange,提问作者Pranav
相关产品推荐
相关产品推荐

