Modulearchive - Improve the efficiency of compiling Android.Package module as AAR and cache it

Related tags

Tools modulearchive
Overview

ModuleArchive

一个可以提升Android编译效率的Gradle小插件

在多module工程下,大多数情况我们若干子module是不会变动的 但是在当前gradle版本偶尔会触发联动编译进而影响编译效率。

本插件会自动缓存编译后的子模块生产物(xxx.aar),且会自动替换依赖为aar依赖。 如果你改动了子module本插件通用会自动感知进行编译再次进行缓存。

TIYA项目中增量构建效益对比图

image

使用指南

在您的app的build.gradle添加如下配置

//启用插件
apply plugin: org.modulearchive.plugin.ModuleArchivePlugin
//插件配置
moduleArchive {
    //可选参数.是否打印log 默认为false
    logEnable = true
    //可选参数.是否启用插件 默认为false
    pluginEnable = true
    //必选参数.存储插件临时配置目录
    storeLibsDir = project.rootProject.file("libs")
    //下面配置哪些模块可以被编译成aar缓存
    subModuleConfig {
        //image-picker是一个aar模块,那么他会自动在构建后缓存
        //从而提高效率,在您修改这个模块后会自动进行构建
        register(":image-picker") {
            //可选参数.是否使用debug版本
            useDebug = true
            //可选参数.是否启用这个模块配置 
            enable = true
            //可选参数. 缓存的aar命中
            aarName = "image-picker-debug.aar"
            //可选参数.构建变体 如没有可不写
            flavorName = "tiya"
        }
        //另一个aar模块,其最简约配置
        register(":floatwindow") {
      
        }



    }
}

谁在使用

TIYA
TIYA
You might also like...
Android Material Design Theme UI and Tool Library. Support: 4.0.3~O
Android Material Design Theme UI and Tool Library. Support: 4.0.3~O

GitHub OSChina 中文 English Genius-Android Genius-Android: by Material Design style and some commonly used packages. Starting in 2015, The divided into

It makes a preview from an url, grabbing all the information such as title, relevant texts and images. This a version for Android of my web link preview https://github.com/LeonardoCardoso/Link-Preview
It makes a preview from an url, grabbing all the information such as title, relevant texts and images. This a version for Android of my web link preview https://github.com/LeonardoCardoso/Link-Preview

LeoCardz Link Preview for Android It makes a preview from an url, grabbing all the information such as title, relevant texts and images. Visual Exampl

Analytics Tools for Kotlin Multiplatform Mobile iOS and android
Analytics Tools for Kotlin Multiplatform Mobile iOS and android

Index Features Example Introduce Architecture Installation Configure Using Screen Mapper Initialization Implementation Delegate Parameters ATEventPara

Android USB host serial driver library for CDC, FTDI, Arduino and other devices.

usb-serial-for-android This is a driver library for communication with Arduinos and other USB serial hardware on Android, using the Android USB Host M

Library that makes it possible to read, edit and write CSV files
Library that makes it possible to read, edit and write CSV files

AdaptiveTableLayout Welcome the new CSV Library AdaptiveTableLayout for Android by Cleveroad Pay your attention to our new library that makes it possi

A library which will save you a lot of time from writing the same intent creation code. it consist of many intent creation codes like Share, Contacts, Email and etc, which you can easily use.

Android-Intent-Library A library which will save you a lot of time from writing the same intent creation code. it consist of many intent creation code

Enhance the adb shell using busybox, supporting vi、grep and awk etc. No need root.
Enhance the adb shell using busybox, supporting vi、grep and awk etc. No need root.

super-adb 用busybox加持的功能更加强大的adb shell;不需要root。 使用方法 准备工作 安装 python,注意选择安装python 2.x 安装pexpect这个python库: pip install pexpect 下载super_adb,把它放到系统路径 cp su

Taskbar puts a start menu and recent apps tray on top of your screen that's accessible at any time
Taskbar puts a start menu and recent apps tray on top of your screen that's accessible at any time

Taskbar puts a start menu and recent apps tray on top of your screen that's accessible at any time, increasing your productivity and turning your Andr

An easy to use translation / localization api written in Kotlin that can be used with Java and Kotlin

KTranslate KTranslate is an easy to use TranslationAPI written in Kotlin, with currently 26 supported languages. It is very easy to use in Kotlin and

Releases(v1.0.22)
Owner
JackFan
一个贪财好色的程序员
JackFan
知乎 Android 团队使用的 Java 库静态代码检查工具,支持目录、.jar、.aar 格式,可通过配置文件添加检查策略

SimpleWalker 知乎 Android 团队使用的 Java 库静态代码检查工具,支持目录、.zip、.aar 格式,可通过配置文件添加检查策略。 主要用于检查 Android 应用的三方依赖是否有调用隐私接口。 使用方法 项目工程中 release/ 目录下是最新版本的可执行文件,help

zkw周柯文 87 Dec 20, 2022
Command-line tool to count per-package methods in Android .dex files

dex-method-counts Simple tool to output per-package method counts in an Android DEX executable grouped by package, to aid in getting under the 65,536

Mihai Parparita 2.6k Nov 25, 2022
:inbox_tray: [Android Library] Hunt down all package information

Android library to hunt down package information. The library is built for simplicity and approachability. It not only eliminates most boilerplate cod

Nishant Srivastava 141 Nov 17, 2022
Android Resource Manager application to manage and analysis your app resources with many features like image resize, Color, Dimens and code Analysis

Android Resource Manager application to manage and analysis your app resources with many features like image resize, Color, Dimens and code Analysis

Amr Hesham 26 Nov 16, 2022
A tool to install components of the Android SDK into a Maven repository or repository manager to use with the Android Maven Plugin, Gradle and other tools.

Maven Android SDK Deployer Original author including numerous fixes and changes: Manfred Moser [email protected] at simpligility technologies i

simpligility 1.4k Dec 27, 2022
A tool to install components of the Android SDK into a Maven repository or repository manager to use with the Android Maven Plugin, Gradle and other tools.

Maven Android SDK Deployer Original author including numerous fixes and changes: Manfred Moser [email protected] at simpligility technologies i

simpligility 1.4k Dec 27, 2022
Simple library to generate and view PDF in Android

PDFCreatorAndroid Simple library to generate and view PDF in Android A simple library to create and view PDF with zero dependency Or native code. Add

Tej Pratap Singh 234 Dec 11, 2022