一、建立公用库并导出aar
之前在ADT中建立这样的工程时,在新建过程中将Project标识为As a library,就可以了。在Android Studio中,需要新建一个项目,然后再新建一个Module,类似为Android Library。
在导出aar包时,一般需要混淆这个包。AS 2.0中,编辑这个module对应的build.gradle,修改
buildTypes { release { minifyEnabled true proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro' } }
miifyEnabled 默认为false,改为true。
修改module对应的混淆配置文件 proguard-rule.pro。将对外暴露的方法、变量、以及父类组件需要调用的一些方法等,不要混淆了。参考:
http://blog.csdn.net/kangbulb/article/details/40625149
开始导出aar包,两种方式。一、直接build-->make module,在该module的build/output目录中会生成XXX-debug.aar包。二、打开Gradle projects窗口(一般在AS的右侧),找到这个module下的assembleRelease,直接双击运行,就可以了。会在 build/output中生成XXX-reelase.aar包,该包是混淆过的。
二、使用这个aar.
将导出的aar放到libs目录中。
在要使用公用aar的module中,修改build.gradle.在android{...}部分添加libs目录:
repositories { flatDir { dirs 'libs' } }
在dependencies{}中,添加导出包的引用
compile(name: 'XXX-release', ext: 'aar')
这样,就可以直接在工程中引用公用库中的内容了。