一·简介
Android中常见的第三方库包括:.so、.jar、*.aar 。一般来说·so是C或C++编写的内容打包成的库,所以我们暂不探究
二. jar
1.什么是jar?
JAR(Java Archive ,Java归档文件)是与平台无关的一种文件格式,它允许将许多文件组合成一个压缩文件。以.zip格式为基础,不仅用于压缩和发布,还用于部署和封装库,组件和插件程序,并且可以被像编译器和JVM这样的工具直接使用。
jar包只包含了class文件与清单文件,不包含资源文件(如图片等所有res中的文件)
打jar包时,项目里的res文件时用不了的,如果想用图片文件,可以将图片文件放进assets文件中打进jar包在进行调用,但是必须注意jar中assets文件夹里的文件不能和调用项目里的assets文件夹里的文件重名。
2.jar的优点?
优点:安全性,减少下载时间,传输平台扩展,包密封,包版本控制,可移植性。
3.打包jar包方法
4.使用jar方式
*·jar拷贝到对应module的libs目录中,在eclipse直接导入即可,AndroidStudio项目中要添加
api fileTree(include: ['*.jar'], dir: 'libs')
三.aar
1.什么是aar?
Android库项目的二进制归档文件,包含所有资源,class以及res资源文件全部包含。
将aar解压(后缀改为.zip,在解压文件)打开后,可以看到每个aar解压后的内容可能不完全一样,但是都会包含AndroidManifest.xml,classes.jar,res,R.txt。
2.打aar包方法
3.AndroidStudio使用aar方式
将*.aar拷贝到目标mudule的libs目录下,然后在build.gradle中配置
repositories {
flatDir {
dirs'libs'
}
}
dependencies {
implementation(name:'你拷贝的arr的名字', ext:'aar')
}
四.总结
jar文件只包含class文件和清单文件,不包含资源文件(如图片等所有res下的资源文件)
aar包含class,清单文件,R文件及res下的所有资源文件
网友评论