Androidstudio 編譯慢 這樣的體驗肯定很多人都有!!!


本人也是經歷過的   在老板站在你身后  說看下你做的東西怎么樣啦   然后你開始編譯你剛寫代碼     然后過了老長一段時間    你默默的拿起水來喝   緩解尷尬   boss一直站在后面   忍不住來了句   還沒好嗎?   以上所以就記錄下

 

JRebel for Android 是一個Android Studio的插件,可以大大加速Android Studio的編譯速度,對於小項目來說或許不明顯;但是當項目達到一定的規模時,它對於Android Studio烏龜般的編譯速度有非常大的改善。

JRebel for Android使得每次改動代碼后,不需要重新安裝新的 apk;而是在安裝完一次應用后,通過增量包傳遞到設備或者模擬器上,並且能夠在應用運行時進行更新。

據說JRebel比Instant Run快了8倍,詳情可查看 官方介紹 。

1. 安裝

你可以直接點擊IDE的 Plugins -> Browse Repositories -> 輸入 JRebel for Android 來搜索和安裝插件。

如果因為某些原因你無法訪問 maven 的公有倉庫,你可以直接在 JetBrians官網 下載,然后通過 Plugins > Install plugin from disk… 來安裝插件。

當你安裝完插件后,你需要重啟Android Studio,在重啟之后,你需要提供你的姓名和郵箱來得到JRebel for Android的21天免費使用(JRebel 是收費的,個人用戶每年要 49 美元,但是據說21 天到期之后你可以重新注冊,據說官方對郵件沒有驗證,由於我暫未使用到21天,所以暫時未知,感興趣的你可以下載試試)。

2. 使用

重啟Android Studio,會發現在頂部工具欄出現如下三個按鈕:

從左到右分別是:

  • Run app with JRebel for Android
  • Debug app with JRebel for Android
  • Apply changes with JRebel for Android

一般我們只需要第一次安裝的時候使用 第一個按鈕 運行一次,之后代碼變動,只需要點擊 第三個按鈕 ,你的真機或者模擬器很快就展示出來修改代碼之后的效果。

3. 參考資料

二、Freeline

Freeline是由螞蟻聚寶Android團隊開發的一款針對Android平台的增量編譯工具。它可以充分利用緩存文件,在幾秒鍾內迅速地對代碼的改動進行編譯並部署到設備上,有效地減少了日常開發中的大量重新編譯與安裝的耗時。

1. 配置

配置project-level的build.gradle,加入freeline-gradle的依賴:

buildscript {
    repositories { jcenter() } dependencies { classpath 'com.antfortune.freeline:gradle:0.8.2' } } 

然后,在你的主module的build.gradle中,應用freeline插件的依賴:

apply plugin: 'com.antfortune.freeline'

android {
    ...
}

最后,在命令行執行以下命令來下載 freeline 的 python 和二進制依賴。

  • Windows[CMD]: gradlew initFreeline
  • Linux/Mac: ./gradlew initFreeline

對於國內的用戶來說,如果你的下載的時候速度很慢,你也可以加上參數,執行gradlew initFreeline -Pmirror,這樣就會從國內鏡像地址來下載,命令即為:

  • Windows[CMD]: gradlew initFreeline -Pmirror
  • Linux/Mac: ./gradlew initFreeline -Pmirror

你也可以使用參數 -PfreelineVersion={your-specific-version} 來下載特定版本的 freeline 依賴。

如果你的工程結構較為復雜,在第一次使用freeline編譯的時候報錯了的話,你可以添加一些freeline提供的配置項,來適配你的工程。具體可以看 Freeline DSL References 。

2. 使用

Freeline最快捷的使用方法就是直接安裝Android Studio插件。

在Android Studio中,通過以下路徑 Preferences → Plugins → Browse repositories ,搜索“freeline”,並安裝。

直接點擊 Run Freeline 的按鈕,就可以享受Freeline帶來的開發效率的提升啦(當然,你可能會先需要一個較為耗時的全量編譯過程)。

插件也會提示你Freeline最新的版本是多少,你也可以通過插件來對Freeline進行更新。

3. 參考資料

三、其它方法

1.在C:\Users\{用戶名}\.gradle下創建gradle.properties文件

文件內容:

org.gradle.daemon=true org.gradle.jvmargs=-Xmx2048m -XX:MaxPermSize=512m -XX:+HeapDumpOnOutOfMemoryError -Dfile.encoding=UTF-8 org.gradle.parallel=true org.gradle.configureondemand=true

如圖:

 
        

2.打開Android Studio,選擇菜單項 File->Settings,把 Offline Work打上勾。


 

再按照圖中標注操作


 

最后,保存,並重新打開Android Studio.你現在Gradle應該有了很大的提升。


然后配置--profile,生成profile報告,分析慢的原因,


http://liaohuqiu.net/posts/speed-up-your-build/ 講了慢分析原因


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM