无论是用Eclipse还是用Android Studio做android开发,都会接触到jar包,全称应该是:Java Archive,即java归档文件。
在用AS的过程中,你会发现有aar这么个东西,经查阅资料了解到,aar是android归档文件,我想全称应该是:Android Archive。
他们两个有什么区别呢?


个人理解:
jar是java文件编译后的class文件压缩包。
aar是android module中所有resource文件和编译后的java文件的总压缩包。
区别在于:aar除了包含class文件,还包含resource文件。


在Android Studio中如何引入aar文件呢?
拿RecyclerView的aar文件为例。
1、找到aar文件:..\Android_SDK_Windows\extras\android\m2repository\com\android\support\recyclerview-v7\24.0.0\recyclerview-v7-24.0.0.aar
 copy到Android Studio项目中的libs目录下。


2、然后在Android Studio对应的module的build.gradle文件中输入一下内容:

dependencies {
    ...
    compile(name:'recyclerview-v7-24.0.0',ext:'aar')
}

repositories {
    flatDir {
        dirs 'libs'
    }
}

3、然后重新build下整个项目即可。


在Android Studio中如何把某一个module导出为aar文件呢?

以testlibrary为例:

1、执行对应module的assembleRelease命令:


上图切记,如果是项目的主module,即app,则生成的是apk包。


2、在对应module的build\outputs\aar\目录下即是:




如果想把aar文件导入到Eclipse中呢?


如图:把aar文件用WinRAR等压缩软件打开后,会发现是上面的结构,classes.jar即为class文件的jar包,其他的为android相关的资源文件。

如果你想把导入到Eclipse中,就需要把这里面的所有资源和class文件转换成一个library工程了。

用Eclipse新建一个library工程,导入res资源、清单文件和发编译后的java文件。


Logo

为开发者提供学习成长、分享交流、生态实践、资源工具等服务,帮助开发者快速成长。

更多推荐