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万+
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章