Android —生成Jar包,aar(一)

个人博客:haichenyi.com。感谢关注

  最近公司说要做一个信息采集和签到功能,要把这两个功能提取成一个jar包,给其他app调用,之前没做过,感觉jar包这个功能还是挺好用的,整理一下,做个记录。两种生成jar和aar的方式,这是第一种,后面还会讲第二种

生成Jar,aar

  首先,跟正常一样,新建一个项目,什么都不用做,新建一个项目就可以了,然后再项目里面File——new——new module——android Library,名字你随意取,如下图:

《Android —生成Jar包,aar(一)》 new_module.png
《Android —生成Jar包,aar(一)》 android_library.png

  我们都知道,jar包是用来提供功能,也就是方法,给别人调用的,这里,我们就先在我们刚新建的module里面创建一个类,用来测试,我们这个jar包到底能不能用。如下图所示:

《Android —生成Jar包,aar(一)》 测试类.png

  就是这样,很简单的一个ToastUtils工具类。辣么,怎么生成jar包呢?打开你的module功能的build.gradle,注意,是你的modle目录,配置如下:

《Android —生成Jar包,aar(一)》 jar配置.png

//作用是:修改jar的名字,和指定jar生成的地方
task makeJar(type: Copy) {
    //删除已经存在的jar包
    delete 'build/libs/test.jar'
    //设置copy文件
    from('build/intermediates/bundles/release/')
    //生成jar包后的文件目录
    into('build/libs/')
    //生成的jar包名字默认都是classes
    include('classes.jar')
    //重命名,把classes.jar命名成myFirst.jar
    rename('classes.jar', 'myFirst.jar')
}

makeJar.dependsOn(build)

  接下来,打开你的Terminal控制台的页面,在你项目的跟目录下面(默认就是根目录),输入 gradlew makeJar 命令,点击回车,(PS:第一次生成jar包,可能需要下载需要的插件,请耐心等待)。出现如下信息,就表示打包成功。

《Android —生成Jar包,aar(一)》 生成jar、aar.png

  接下来找到你的module——build——libs下面就是你要的jar包,module——build——outputs——aar下面,就是你的aar包。

《Android —生成Jar包,aar(一)》 jar、aar.png

用法

  jar包的用法,我想大家都知道吧?拷贝到你自己项目的libs目录下面,右键——Add As Library,然后该怎么用,怎么用。依赖jar包之后,就可以看jar包的内容了,可以看一下。

  aar的用法,可能跟jar包有些不一样。看如下图片:

《Android —生成Jar包,aar(一)》 aar配置图片.png

代码如下:

repositories {
        flatDir {
            dirs 'libs'
        }
    }
    
implementation(name: 'mylibrary-release', ext: 'aar')

  题外话,jar包的内容直接在jar包那里看到,aar呢?当你依赖成功之后,你可以在你的External Libraries目录下看到,如下图:

《Android —生成Jar包,aar(一)》 aar位置.png

  为什么会有jar之后,又出了一个aar格式呢?因为,jar包,它不包含文件资源,aar,他包含文件资源。我记得很清楚的是,之前依赖百度还是高德地图的时候,要拷贝很多的res目录,到我们自己的项目里面,他这里就是文件资源。有了aar之后,我们就不必了,因为,他的aar里面就包括了资源文件。

PS:你jar包里面依赖的其他第三方的框架,你需要在你引入jar包的项目里面,重新添加依赖。

    原文作者:海晨忆
    原文地址: https://www.jianshu.com/p/4b196de149a1
    本文转自网络文章,转载此文章仅为分享知识,如有侵权,请联系博主进行删除。
点赞