Android Studio 将公共工具库打成jar包和arr包
2017-04-25 本文已影响0人
MLLWF
两者的区别
jar包里只能将库里的源码打进去,而资源什么的不能打进去,所以在使用jar包的时候,如果要使用jar包里的资源就要使用反射来实现不然就会有问题!而打arr包的时候AS会自动的将资源文件和源码一起打进去这样在使用的时候就不用担心资源缺失的问题了!
jar包方法:
首先建一个Android Project 就叫AndroidUtil,然后再这个项目中再新建一个Module,在选择类型的时候要选择Android Library,这样做就是将这个Module作为一个库使用!
然后对这个库的build.gradle文件进行修改:
箭头所示的是你在打完jar包之后,jar包的名字,可以自己定义!
task makeJar(type: org.gradle.api.tasks.Copy){
delete 'build/libs/commentUtil.jar'
from('build/intermediates/bundles/release/')
into('build/libs/')
include('classes.jar')
rename('classes.jar','commentUtil.jar')
}
makeJar.dependsOn(build)
修改完之后,我们还需要在AS自带的命令行中执行一句命令:
gradlew makeJar就可以了,最后打成的jar包就在这个Module下面的build文件夹下的libs文件夹里!
最后提一下如果库里面如果有使用资源文件,我们就只能将这些资源文件放到我们要使用jar包的工程里,然后通过反射来使用这些资源,这里推荐一篇文章: 反射机制
arr包方法:
首先和上面的步骤差不多,新建个一个Library,然后再用项目去依赖这个Library,做完这些之后就直接运行一下项目,然后再这个Library下面的build/outputs下面就看到了arr包:
这样导出就完成了。导入App也很简单,首先把arr包放到工程的libs文件夹下,然后再App的build.gradle文件下添加如下代码:
这样就完成了arr包的导入!