1. 程式人生 > >Android Studio優化編譯速度

Android Studio優化編譯速度

隨著Android Studio的不斷完善,其安卓開發者陣營也基本從Eclipse轉移到了Android Studio,畢竟Android Studio是谷歌親力親為開發的官方開發軟體。不過其最重要的原因應該還是Android從14年開始不再對Eclipse外掛支援的緣故吧。剛開始學Android用的是Eclipse,現在工作中使用的是Android Studio,前段時間推出了3.0.0,然後現在更新到了3.0.1。要說和2.3有什麼區別,直觀上來說就是風格吧,升級到3.0以後有點醉,以前2.3好好的專案,3.0編譯不過了,需要做一些調整才能順利編譯,另外一個就是明顯感覺編譯速度變慢了,既然出現了問題,那就開始著手解決問題吧。終於把話題扯回來了,今天要說的是Android Studio優化的事情。

在網上查閱資料以及親身實踐以後發現了可行的辦法,現總結如下:

  1. 開啟gradle單獨守護程序,開啟並行編譯,啟用新的孵化模式

    ① 在以下目錄下建立gradle.properties檔案:
    - /home/<username>/.gradle/ (Linux)
    - /Users/<username>/.gradle/ (Mac)
    - C:\User\<username>/.gradle/ (Windows)

    ② 在gradle.properties檔案中填寫以下配置

    
    #開啟守護程序
    
    org.gradle.damen=true
    
    ##開啟並行編譯
    org.gradle.parallel=true ##啟用新的孵化模式 org.gradle.configureondemand=true

    說明:以上的配置是全域性生效,如果只是想讓單個程式編譯速度加快,可以在專案中的gradle.properties配置。

  2. 為Android Studio申請更大的記憶體。

    相信現在很多人的記憶體都在8G或者更高。因此可以順便為Android Studio分配更多的記憶體供其使用。

    ① 在Android Studio的安裝目錄下找到bin資料夾,如果是32位的系統,開啟studio.exe.vmoptions配置檔案,如果是64位系統,開啟studio64.exe.vmoptions

    配置檔案。
    ② 找到如下文字資訊(根據電腦配置不同,初始化資料有所差異):

    -Xms256m
    -Xmx1280m

    這是軟體安裝時候預設 分配的大小。JVM初始分配的堆記憶體由-Xms指定,JVM最大分配的堆記憶體由-Xmx指定。JVM 中最大堆在32位系統下,一般限制在1.5G~2G,64為作業系統對記憶體無限制,另外原本在Settings裡面設定的VM Options也可以在這裡配置。其他一些引數也是關於JVM相關設定的,MaxPermSize(非堆記憶體最大值),HeapDumpOnOutOfMemoryError(當首次遭遇OOM時匯出此時堆中相關資訊)。其中我們只需要修改這些引數就可以了,注意,在每一行後面一定不要留空格。如果感興趣的話可以參考以下文章:VM調優總結 -Xms -Xmx -Xmn -Xss。我的電腦為12G記憶體,我就其設定為(關於設定依據,沒找到合適的參考文章,就感性的設定了一個):

    -Xms512m
    -Xmx4096m
    -XX:MaxPermSize=2048m
    -XX:+HeapDumpOnOutOfMemoryError
    -Dfile.encoding=UTF-8
  3. 優化編譯
    在Android Studio中,依次選擇File -> Settings -> Build,Execution,Deployment -> Compiler中設定如下:
    Android Studio Setting Compiler
    說明:勾選的第一項為並行設定,第二項為離線工作設定,這個後面會再提到。第三項為開啟自動編譯,第四項為配置守護程序。設定完後點擊應用。在3.0中,將原本的VM Options移除了,使用2.3的讀者注意下這個細節。
    可以在gradle.properties中配置:

    org.gradle.jvmargs=-Xmx4096m -XX:MaxPermSize=512m -XX:+HeapDumpOnOutOfMemoryError -Dfile.encoding=UTF-8  // 配置編譯時的虛擬機器大小

    也可以在Command-line Options配置:

    -Xmx4096m
    -XX:MaxPermSize=2048m
    -XX:+HeapDumpOnOutOfMemoryError
    -Dfile.encoding=UTF-8

    為了保持統一,就在studio64.exe.vmoptions配置了,所謂條條大路通羅馬。

  4. 配置gradle離線工作
    在Android Studio中,依次選擇File -> Settings -> Build,Execution,Deployment -> gradle中設定如下:
    這裡寫圖片描述
    第一個為選擇本地gradle版本,預設選中的是上一個預設值,其位置在C:\User\<username>\.gradle\wrapper\dists\ (Windows)下,在Android Studio下也有相應的gradle,選擇這個比較方便。在這裡順便提供下前段時間從官網扒下來的gradle,方便各位讀者下載:

    連結:https://pan.baidu.com/s/1gfbAWKV 密碼:lr8k

    勾選gradle會使得速度更快,但同時存在一個問題,如果需要從網上載入第三方庫,會無法下載,所以酌情使用。前面的Command-line Options與這裡相對應。

最後,重啟Android Studio,你會發現便宜速度大幅提升,瞬間心情就好很多了。

以上屬於個人體驗心得總結,若有不足之處,還望不吝賜教,歡迎批評指正,共同進步。