一、android中.aar文件与.jar文件简单介绍
.jar:
只包含了class文件与清单文件,不包含资源文件,如图片等所有res中的文件。
.aar:
包含所有资源,class以及res资源文件
如果你只是一个简单的类库那么使用生成的.jar文件即可;如果你的是一个UI库,包含一些自己写的控件布局文件以及字体等资源文件那么就只能使用 .aar文件。
二、android中.aar文件与.jar文件的引用
在Android Studio中对一个自己库进行生成操作时将会同时生成 .jar与 .aar文件。
分别存储位置:
.jar:库/build/intermediates/bundles/debug(release)/classes.jar
.aar:库/build/outputs/aar/libraryname.aar
.jar
拷贝到:libs目录,AndroidStudio项目中添加:
dependencies {
compile fileTree(include: ['*.jar'], dir:'libs')
}
重新编译一次项目既可完成加载。
.aar:
引用 arr 有两种方式,分别为本地加载以及网络加载(网络加载涉及到发布到mavenCentral托管的问题)
如下是本地加载方式:
第一步:拷贝到:libs目录
第二步:build.gradle 配置文件中更改为
repositories {
flatDir {
dirs 'libs'
}
}
dependencies {
//引用方法一
compile(name:'materialiconlib-release', ext:'aar')
//方法二(如果这个项目是放本地的)
compile project(":materialiconlib")
}
方法一中的name 是 arr 的名字
方法二中的这种方法是有源文件放本地的,而且项目名叫materialiconlib
重新编译一次即可正常使用了,编译后生成文件的地址是 \build\intermediates\exploded-aar\。点开一个你会发现里面包含了一个”classes.jar“文件与一些资源文件和”R.txt“文件。
三、Android Studio 生成 .aar文件的方法
生成 .aar文件步奏如下:
用android studio打开一个工程,然后新建一个Module,新建Module时候选择Android Library,后面按新建普通工程操作
在新建的Module中编写完代码后,接下来编译整个工程后就会自动生成aar包,包的路径在新建的Module ==》 build ===》outputs ==>aar目录下。
其他androidstudio工程引用这个aar包只需将aar包复制到lib目录下 ,操作如上面的操作即可。