当前位置:   article > 正文

AndroidStudio最新打包jar和aar的方法_android studio 打包aar

android studio 打包aar

环境

文章的运行环境为:
AndroidStudio版本:3.1.4
Gradle版本:3.1.4

前言

在日常开发中我们常常需要引用其他项目的代码。有如下几种方式:

  1. 通过gradle,maven等远程导入。
  2. 复制对应的Library到自己的Project下,直接导入Library。
  3. 用AndroidStudio打开代码,然后打包成jar或者arr,复制到项目的libs文件夹下,导入即可。

方法1适合开源项目,否则需要通过购买GitHub私有项目或者搭建私服来使用。
方法2虽然简单,但是如果多个Project多次使用则非常麻烦。
方法3则是打包一次,直接复制jar或arr就可多次使用。

今天就来简单介绍一些方法2和方法3,和在最新的AndroidStudio和Gradle下如何打包jar和arr。

PS:最新的AndroidStudio和Gradle下虽然打包aar变的简单,但是打包jar变得麻烦许多,生成的路径也变了,这里需要注意。

arr和jar的区别

  1. jar:仅打包了class文件和配置清单文件,其res等资源文件并没有打包。适合传统的Java或者没有资源文件的Android项目。
  2. arr:打包了所有的class、res等资源文件。适合Android项目。

导入Library

新建一个Library,复制,编辑所需代码。也可以通过Import Module的方式导入。
如果是直接复制的Library,则需要配置工程的settings.gradle,在include后添加对应的Library,如下:

include ':app', ':mylibrary'
  • 1

如果没有文件夹上没有出现树状图的小标志,可以Build—>Rebuild Project。

导入如下图:
这里写图片描述

打包aar

直接看图简单了事。如下:
这里写图片描述

这里写图片描述

最新的Gradle可以直接implementation files(‘xxxxxx.aar’)导入aar,而非传统的compile(name: ‘xxxxx’, ext: ‘aar’),无需额外配置代码,非常的方便。

打包jar

复制如下代码到Library下的build.gradle中:

//根据Library名称生存jar包到build目录下
//可根据自己需求更改
task againMakeJar(type: Copy) {
    def name = project.name //Library名称
    delete 'libs/' + name + '.jar' //删除之前的旧jar包
    from('build/intermediates/packaged-classes/release/') //从这个目录下取出默认jar包
    into('libs/') //将jar包输出到指定目录下
    include('classes.jar')
    rename('classes.jar', name + '.jar') //自定义jar包的名字
}
againMakeJar.dependsOn(build)
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
2022.12.09更新

最新的Android33版本中jar包所在目录在build/intermediates/compile_library_classes_jar/release/

//从这个目录下取出默认jar包,不同版本目录均不一样,根据自己项目在build中找classes.jar所在目录
from('build/intermediates/compile_library_classes_jar/release/')
  • 1
  • 2

导入如下图:

这里写图片描述

复制生成的jar包到制定项目的libs目录下,然后右键选择Add as Lisbrary,即可成功导入。

参考

Android studio 将 Module 打包成 Jar 包
android studio library生成jar包和aar的方法总结

声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/2023面试高手/article/detail/331487
推荐阅读
相关标签
  

闽ICP备14008679号