Android高效開發編譯調試神器_Jrebel 最新激活方法以及 freeline(快到飛起~秒殺InstantRun)

Google官方的instantRun目前有很多問題,比如比不支持分包,或者只能熱修補佈局改變等,之前一直用高效開發調試神器 JRebel ;用過都知道一用就根本停不下來,但後來更新版本修復了此插件漏洞,不付費情況下比較難破解,所以只好退而求其次用類似的阿里螞螞蟻旗下插件freeline(貌似是漂移板的牌子..);已安裝成功,使用沒JRebel好但也還行..畢竟是免費的,還要啥自行車...

首先是Jrebel 的激活方法:

截至 2017.09.12 親測激活有效

從 2.2.0 版開始, JRebel for Android 授權方式改成了免費版和企業版, 具體區別請看官網介紹

企業版支持授權服務器激活, 具體使用方法爲:

  1. 隨意找個 GUID在線生成工具(https://www.guidgen.com/ ), 生成一個 GUID, 我這裏生成的GUID爲 0b2cab97-d78c-431d-939c-61dc85f0906d, 當然, 也可以按照 8位字符-4位字符-4位字符-4位字符-12位字符的格式自己隨意生成.

  2. 在 JRebel for Android 激活界面選擇 Connect to License Server, 在 Group URL中填寫 http://idea.lanyus.com/0b2cab97-d78c-431d-939c-61dc85f0906d (即http://idea.lanyus.com/ + 剛纔生成的GUID), Email
    中隨意填寫一個郵箱, 勾選 I agree with terms & conditions of the License Agreement, 點擊 Activate JRebel for Android 即可激活企業版.

    (附JRebel 證書最新激活方法  需翻牆, 親測時已失效,備看:http://blog.csdn.net/lixuanshengchao/article/details/72599021  )

下面是freeline的使用

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

Freeline代碼開源在Github: 
https://github.com/alibaba/freeline

Freeline在雲棲社區的原理說明: 
https://yq.aliyun.com/articles/59122?spm=5176.8091938.0.0.1Bw3mU

使用過程整理如下:

1.在工程層級的build.gradle中加入freeline-gradle的依賴

buildscript {
    repositories {
        mavenLocal()
        jcenter()
    }
    dependencies {
        classpath 'com.android.tools.build:gradle:2.2.2'
        classpath 'com.antfortune.freeline:gradle:0.8.2'
    }
}

allprojects {
    repositories {
        jcenter()
    }
}

2.在你的主module的build.gradle中,添加freeline插件的依賴

注意:主工程依賴的module不需要添加這個依賴

apply plugin: 'com.android.application'
apply plugin: 'com.antfortune.freeline'

android {
 ...
}


dependencies {
    ...
}

3.在工程主目錄下執行命令行,自動下載freeline依賴的包

Windows[CMD]:gradlew initFreelineLinux/Mac:./gradlew initFreeline

或者國內鏡像包:

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

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

下載完成後會有成功提示頁面

如果你的工程結構較爲複雜,在第一次使用freeline編譯的時候報錯了的話,你可以添加一些freeline提供的配置項,來適配你的工程。

在moudle的gradle文件增加如下代碼

freeline {

    hack true    productFlavor 'your-flavor'    //.....其他配置項

 }

配置項具體可以看Freeline DSL References。

4.安裝python開發環境

因爲freeline是Python項目,所以本地需要安裝python開發環境並設置環境變量 
當在命令行界面輸入

python -V

能顯示python的版本號時說明安裝成功

5.執行

python freeline.py

執行完成後就安裝到你的手機上了

5.如果不想每次都用命令行,可以在android studio中安裝插件

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

安裝完成後如下圖: 
freeline

注意: 這裏有一個坑,安裝完成後點擊的時候會有下面提示 
這裏寫圖片描述 
明明已經配置過python的環境變量了,但是就是不能執行,這個應該是android studio讀取環境變量的bug 
在android studio自帶的命令行裏面打印環境變量你會發現你設置的python的環境變量並沒有出現 
我嘗試重啓android studio發現還是無效的,最後重啓電腦才解決這個問題。

窗口左邊共有5個按鈕,從上到下按個說一下。 
1. 每次編譯時就點這個按鈕就可以增量編譯了,對應命令是:Python freeline.py 
2. 停止freeline編譯 
3. 進行調試編譯 對應命令是: python freeline.py -d 
4. 全量編譯 對應命令是: python freeline.py -f 
5. 清屏按鈕

現在再說下python命令對應可選參數的說明: 
python freeline.py -d 
可選參數: 
-h, –幫助 顯示幫助信息並退出 
-v, –版本 顯示版本信息 
-f, –cleanBuild 強制執行一次 clean build ,(全量編譯)
-w, –等待 讓應用程序等待 debugger 
-a, –全部 在所有工程上強制執行clean build 並執行-f全量編譯 
-c, –清空 清空緩存目錄和工作空間 
-d, –調試 打開debug模式 
-i, –初始化 對工程進行進行freeline初始化配置

注意事項: 1.必須進行一次python freeline.py -f 

                   2.編譯時智能連接一臺手機 否則會報錯

                   3.安裝後正常生成apk可能會有問題,打包上線時把freeline依賴去掉

發佈了77 篇原創文章 · 獲贊 242 · 訪問量 73萬+
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章