何为aar?大家都知道jar文件,如果你有一个Android Library项目,可以很导出jar文件,然后在其他项目中很方便的引用,aar和jar类似,区别就是一个Android Library项目导出的jar文件不能包含资源文件,比如一些drawable文件、xml资源文件之类的,所以这就有很大的限制,在gradle之前我们要引用带资源文件的Android Library必须要把整个library导入进来进行引用,但是有了gradle之后,Android Library项目可以直接导出成aar,然后其他项目像引用jar的方式直接方便的引用。
一般使用官方的提供的库:如 android-support-v7-appcompat、android-support-design
在build.gradle添加:1
2
3
4
5dependencies {
compile fileTree(include: ['*.jar'], dir: 'libs')
compile 'com.android.support:appcompat-v7:23.1.1'
compile 'com.android.support:design:23.1.1'
}
但这个是需要联网,从MavenCentral下载下来。
如何离线本地引用aar呢?
在app的build.gradle文件添加如下内容1
2
3
4
5repositories {
flatDir {
dirs 'libs' //this way we can find the .aar file in libs folder
}
}
之后添加一句gradle依赖便方便的引用了该library1
2
3dependencies {
compile(name:'design', ext:'aar')
}
即可。