Skip to content

znyang/library-analysis

Repository files navigation

Library Analysis Gradle Plugin

Build Status codecov.io

概述

分析各依赖库文件的大小

  1. 支持大文件提醒
  2. 支持忽略部分依赖库大小(大小显示为灰色)
  3. 支持依赖节点大小统计
  4. 输出aar的PackageName以及冲突提示
  5. 输出依赖库被直接依赖次数(Used)、包含的依赖库数量(Contains)
  6. 标识可移除的依赖库(实验性功能)

可移除的依赖库
例如有这样的依赖关系:A->B->C, A->C,那么A~~->C~~

配置

buildscript {
    repositories {
        // ...
        maven { url "https://jitpack.io" }
    }
    dependencies {
        classpath 'com.github.znyang:library-analysis:0.2'
    }
}

apply plugin: 'com.zen.lib.analysis'

libReport {
    output = [
        "txt", "html" // default
    ]
    ignore = [
        "com.android.support:support-v4"
    ]
}

使用

gradle libReportCompile

output

/build/reports/zen/analysis/library/compile/Tree.html

screenshot

screenshot

/build/reports/zen/analysis/library/compile/Tree.txt

  7.741 MB	       0 B	\--- project :analysis-sample
  1.545 MB	    301 KB	 	+--- com.android.support:design:24.1.1
       0 B	  1.252 MB	 	|	+--- com.android.support:support-v4:24.1.1
       0 B	 21.275 KB	 	|	|	\--- com.android.support:support-annotations:24.1.1
    303 KB	    282 KB	 	|	+--- com.android.support:recyclerview-v7:24.1.1
       0 B	  1.252 MB	 	|	|	+--- com.android.support:support-v4:24.1.1
 21.275 KB	 21.275 KB	 	|	|	\--- com.android.support:support-annotations:24.1.1
    978 KB	    928 KB	 	|	\--- com.android.support:appcompat-v7:24.1.1
 49.837 KB	 11.365 KB	 	|	 	+--- com.android.support:animated-vector-drawable:24.1.1
 38.472 KB	 38.472 KB	 	|	 	|	\--- com.android.support:support-vector-drawable:24.1.1
       0 B	  1.252 MB	 	|	 	|	 	\--- com.android.support:support-v4:24.1.1
       0 B	  1.252 MB	 	|	 	+--- com.android.support:support-v4:24.1.1
 38.472 KB	 38.472 KB	 	|	 	\--- com.android.support:support-vector-drawable:24.1.1
    282 KB	    282 KB	 	+--- com.android.support:recyclerview-v7:24.1.1
 43.505 KB	 22.229 KB	 	+--- com.android.support:cardview-v7:24.1.1
 ...