离线 android studio 使用 grpc android studio离线配置gradle插件_IP


2019/8/17更新:

最近发现 Android Studio 是可以配置 socks 代理的,而当初是否支持已经无从考证。而其内置的 Gradle 却没有提供图形界面配置 socks 代理,但却提供了图形界面配置 HTTP 代理(在打开项目时弹出,如下图所示)。然而我想使用 socks 代理怎么办呢?一种方法是按照本文原来的方法进行配置,然后这个弹窗里就可以按照你配置的情况来填写了。然而还有更方便的方法——在你的 gradle.properties 配置文件里配置 jvm 参数的那行加上代理设置:


org.gradle.jvmargs=-Xmx4536m -DsocksProxyHost=127.0.0.1 -DsocksProxyPort=8080


离线 android studio 使用 grpc android studio离线配置gradle插件_Android_02


当然,你需要把主机与端口替换成你自己的设置,如此一来就可以直接使用 socks 代理了(上文的弹窗就直接 Cancel 就行了)。

以下为原文


最近拾起了安卓开发,虽然之前开发过几个app,但也没有深入了解,在写过更多的代码之后,决定重构一下之前的项目并重新开始安卓学习之路,因此,把实验室的电脑又装上了Android Studio。

面临的第一个问题就是——没有Android SDK,而且,配置的Shadowsocks代理并不起作用,导致我总是下不了Android SDK。最终得知,我得给SDK配置一个HTTP代理才行。所以问题转化成,如何将Shadowsocks的socks5代理转成HTTP代理。对此我选择了Privoxy作为一个本地运行的HTTP代理服务器,让它向Shadowsocks发送网络请求,再将SDK的代理配置为Privoxy即可。

本机环境

Windows 10 x64 + Shadowsocks Windows客户端(C#)

为什么选择Privoxy

其实有一个很强大的代理软件,甚至可以代理那些不支持代理的程序,就是Proxifier。之所以不用它,一是它收费,二是感觉用它阵仗有点大,没必要。既然我只是需要一个HTTP代理,那么强大的开源的Privoxy已经足够。

Privoxy的配置

  1. 下载安装Privoxy。
  2. 打开Privoxy安装目录下的主配置文件config.txt。这里我们需要了解并配置的只有两个字段:
  • 代理的IP地址与监听端口listen-address,因为是在本机运行代理,IP必然是127.0.0.1,这个字段我们保持默认值即可,无须改动,默认值为127.0.0.1:8118。文件内搜索字段名可以查看。
  • 转发请求的代理IP地址与监听端口forward-socks5t,也即本机上运行的Shadowsocks的IP与监听端口,由于Shadowsocks使用socks5协议因此我们选择配置该字段。该字段没有默认配置,我们需要在文件中添加一行,在文件内搜索字段名可以看到注释中给出的示例。对于Shadowsocks,一般监听端口为1080,也就是我们需要在文件中添加一行forward-socks5t / 127.0.0.1:1080 .
  1. 运行安装并配置完成的Privoxy,至此我们的机器上已经运行着一个可以进行HTTP代理的代理服务。

Android Studio的配置

  1. 打开Android Studio,进入Settings -> System settings -> Android SDK,会发现根本获取不到Android SDK的列表,接下来配置代理解决这个问题。
  2. 在Android Studio中进入Settings -> System settings -> HTTP Proxy,依次点击选择Manual proxy configurationHTTP,然后在Host name中填写127.0.0.1,在Port number中填写8118。至于下面的No proxy for这个字段,个人只填写了localhost,127.*,可以适当添加不需要代理的IP和域名。点击OK保存更改。
  3. 再次进入Settings -> System settings -> Android SDK,这个世界正常运行了起来。