RocketX

🔥🔥 android 端编译加速插件🚀 动态识别未改动 module 并在编译流程中替换为 aar ,只编译改动模块,加速 Android apk 的编译速度。

Stars
858
Committers
6

This plugin automatically recognizes the unchanged module and replaces it with aar in the compilation process to speed up the full compilation speed of Android projects.The speed that you can experience is to build all modules like aar, while keeping all modules for easy modification, perfect!

中文文档

Gradle Build Speed

AGP Version Compatible

Plugin version Gradle version
4.0.0+ 6.1.1+
4.1.0+ 6.5+
4.2.0+ 6.7.1+
7.0 7.0+

How to use

Way 1:Network dependence

  • add rocketx plugin
// app module build.gradle add code:
apply plugin: 'com.rocketx'
// root Project build.gradle add code:
buildscript {
    dependencies {
        classpath 'io.github.trycatchx:rocketx:1.1.0'
    }
}
  • add android studio plugin by enter android studio setting->plugins-> marketplace,search "RocketX" and install it .

Way 2:Local dependence

Download two jars in the lib folder of the project:

  • install “rocketX-studio-plugin.jar” by android studio setting->plugins->install plugin from disk
  • Create a new folder Plugin in the root directory of the project, and put rocketx.jar into it,add the following code to build.gradle in the root directory : classpath fileTree(dir: './Plugin', include: ['*.jar'])
Use to tap the little rocket to the Spitfire icon,, Click the original run button of the compiler to compile :
If you have multiple app modules, you can also choose Assemble${flavor}${buildType} task to run

Problem:

  • The first acceleration is the slowest because it needs to be fully compiled, packaged out aar and uploaded to LocalMaven
  • At present, if there is a compilation error, please run it again. Any problems are welcome to raise issues.
  • set org.gradle.configureondemand = false

Blog

Developer and maintainer

github message
JustAClamber 知者不惑
louis louis-lzt
TryCatch 日落西来,月向东
FamilyCYZ 什么也没有留下

License

Copyright (C) 2021 [email protected]

Licensed under the Apache License, Version 2.0 (the "License");
you may not use this file except in compliance with the License.
You may obtain a copy of the License at

   http://www.apache.org/licenses/LICENSE-2.0

Unless required by applicable law or agreed to in writing, software
distributed under the License is distributed on an "AS IS" BASIS,
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
See the License for the specific language governing permissions and
limitations under the License.