歡迎來到Linux教程網
Linux教程網
Linux教程網
Linux教程網
Linux教程網 >> Linux基礎 >> Linux教程 >> 在Unix終端下配置Proxy,加快Android Studio構建

在Unix終端下配置Proxy,加快Android Studio構建

日期:2017/2/28 13:55:17   编辑:Linux教程

Gradle下載jar包慢到飛起?Github同步一半斷了?Docker下載頻繁報錯?是時候為你的終端統一設置一個代理了。本文以Mac(Unix平台)與HTTP_PROXY為例,講解如何在終端下進行配置代理。

本文章屬於筆記類型,質量遠不如技術類文章,但是網上關於此內容的靠譜信息實在不多,故記錄下來。

1. 選擇Proxy

首先,要購買挑選一個Proxy,購買前需要注意服務商需要能夠提供Http Proxy,如下,某良心服務商提供了多種配置方法


Proxy_list

2. 配置終端

  1. 打開終端

     open -t  ~/.bash_profile

    .bash_profile 可以理解為Term打開後能夠自動執行的腳本文件

  2. 在文本中添加如下內容

#idea
export JAVA8_HOME=/Library/Java/JavaVirtualMachines/jdk1.8.0_05.jdk/Contents/Home
export JAVA7_HOME=/Library/Java/JavaVirtualMachines/jdk1.7.0_79.jdk/Contents/Home
export JAVA_HOME=$JAVA8_HOME
#Android
export ANDROID_HOME=/usr/local/Cellar/android-sdk/24.4.1_1
export ANDROID_SDK=$ANDROID_HOME
export ANDROID_NDK=/usr/local/Cellar/android-ndk/r10e

#http proxy
HOST=www.xxx.com
PORT=xxxx

#if use lantern, removes comments
# LANTERN=127.0.0.1 
# HOST=$LANTERN
# PORT=8787

export http_proxy=http://$HOST:$PORT
export all_proxy=$http_proxy
export https_proxy=$http_proxy
export ftp_proxy=$http_proxy
export dns_proxy=$http_proxy
export rsync_proxy=$http_proxy
export no_proxy="localhost,127.0.0.1,localaddress,.localdomain.com,.coding.net,192.168.99.100"

#java(works fine on gradle/mvn/android)
export JAVA_OPTS="-Dhttp.proxyHost=$HOST -Dhttp.proxyPort=$PORT -Dhttps.proxyHost=$HOST -Dhttps.proxyPort=$PORT"
#gradle will use `JAVA_OPTS` as concat
export GRADLE_OPTS="-Dgradle.user.home=$HOME/.gradle"
#maven
export MAVEN_OPTS=$JAVA_OPTS
curl ip.cn
  1. 保存配置

     source ~/.bash_profile

    該方法配置好後,在IDEA等工具的終端下同樣有用

3. 查看效果

重新打開終端後,可以發現系統自動執行了curl的命令,此網站會自動告訴了你當前的IP,我們也可以使用wget進行SpeedTest

wget -O /dev/null http://speedtest-sfo1.digitalocean.com/10mb.test

speed_test_digital_ocean

最後,體驗Git,Brew,Gradle等工具的飛速下載吧!

注意:

  1. Mac的Docker環境下需要在虛擬機/VPS中進行配置Proxy
  2. 親測Go,Git,Brew,Curl,Wget,NPM是可以正常使用的,可以達到物理帶寬
  3. 不支持git://svn://,那兩個非要自己搞一套,必須搞一個包裝類,所以算了吧
  4. 如果需要設置內網地址的正則(比如192,10,172),目前暫時沒有完美的方案,只能枚舉並手動加入no_proxy
  5. Gradle是java相關的,用的不是curl,所以需要GRADLE_OPTS作為環境變量,注意這個環境變量只是終端的,而不是IDE下的

4. AndroidStudio項目實例

打開終端

git clone --depth=1 https://github.com/Yalantis/StarWars.Android.git
cd StarWars.Android/
./gradlew build --debug

由於目前有高速Proxy,所以下載依賴非常快,等成功後,打開AndroidStudio導入當前現成的項目,就可以復用緩存而不用卡在Building對話框了

5. 使用Ping進行測速

#proxy array
SERVER=(www.xx.com www.xx2.com)

for s in ${SERVER[*]}
do
    echo testing $s
    rank[$counter]=$(ping -c 4 $s |awk -F '/' 'END {print $5}')
done

min=0
for i in "${!rank[@]}"; do
    if [ $(bc <<< "${rank[$min]}>${rank[$i]}") == 1 ]; 
    then
        let min=$i
    fi
done

echo "best proxy is ${SERVER[$min]}, ping is ${rank[$min]}"

HOST=${SERVER[$min]}
PORT=xxxx
# 進行export

更多Android Studio相關內容可以看看以下的有用鏈接

在Ubuntu 15.04下安裝Android Studio http://www.linuxidc.com/Linux/2015-06/119318.htm

Android Studio 2.0中的模擬器已提速50倍 http://www.linuxidc.com/Linux/2015-11/125481.htm

Ubuntu 12.04(64位)安裝Android Studio 全過程 http://www.linuxidc.com/Linux/2013-05/84812.htm

Android Studio v0.1嘗鮮 http://www.linuxidc.com/Linux/2013-05/84681.htm

Android Studio使用教程 http://www.linuxidc.com/Linux/2013-05/84579.htm

Android Studio開發指南 http://www.linuxidc.com/Linux/2013-05/84543.htm

Android Studio設置主題 和 不支持中文的問題解決方法 http://www.linuxidc.com/Linux/2013-05/84488.htm

Android Studio 下載安裝以及不能打開的解決辦法 http://www.linuxidc.com/Linux/2013-05/84409.htm

Android Studio安裝使用圖文教程 http://www.linuxidc.com/Linux/2014-09/106914.htm

Ubuntu上安裝Android Studio 1.3(谷歌 Android IDE 開發) http://www.linuxidc.com/Linux/2015-08/121004.htm

Android Studio 的詳細介紹:請點這裡
Android Studio 的下載地址:請點這裡

Copyright © Linux教程網 All Rights Reserved