Android Studio中生成aar文件及本地方式使用aar文件的方法
作者:wanqi 发布时间:2022-06-14 23:43:59
主要讲解Android Studio中生成aar文件以及本地方式使用aar文件的方法,具体内容详情如下所示:
在Android Studio中对一个自己库进行生成操作时将会同时生成*.jar与*.aar文件。
分别存储位置:
*.jar:库/build/intermediates/bundles/debug(release)/classes.jar
*.aar:库/build/outputs/aar/libraryname.aar
两者区别:
*.jar:只包含了class文件与清单文件,不包含资源文件,如图片等所有res中的文件。
*.aar:包含所有资源,class以及res资源文件全部包含
如果你只是一个简单的类库那么使用生成的*.jar文件即可;如果你的是一个UI库,包含一些自己写的控件布局文件以及字体等资源文件那么就只能使用*.aar文件。
使用方式:
*.jar:拷贝到:libs目录,eclipse直接导入即可,AndroidStudio项目中添加:
dependencies {
compile fileTree(include: ['*.jar'], dir: 'libs')
}
重新编译一次项目既可完成加载。
*.aar:有两种方式,分别为本地加载以及网络加载,由于网络加载涉及到发布到mavenCentral托管的问题这里不做讨论;另外eclipse很久没有使用了也不做讨论;在这里给大家说一种本地加载的方式,简单快捷。
这里演示的aar文件为:”genius.aar“
第一步:拷贝到:libs目录
第二步:build.gradle 配置文件中更改为
repositories {
flatDir {
dirs 'libs'
}
}
dependencies {
compile(name:'genius', ext:'aar') //”genius.aar“ : name 参数依据就是文件名genius
}
分别添加了”repositories“与更改了”dependencies“,然后重新编译一次项目就可以正常使用了。
这时打开你的项目地址”\build\intermediates\exploded-aar\“你会发现下面多了一个文件夹”genius“打开后能看见里边包含了一个”classes.jar“文件与一些资源文件和”R.txt“文件。
这就是Android Studio自动解析了aar文件后出现的东西。
PS:下面再给大家补充介绍下Android Studio引入aar包
什么是aar包
jar包:只包含了class文件与清单文件,不包含资源文件,如图片等所有res中的文件
aar包:
最近
ndk{
abiFilters "armeabi"
}
总结
以上所述是小编给大家介绍的Android Studio中生成aar文件及本地方式使用aar文件的方法网站的支持!
来源:https://www.cnblogs.com/wanqieddy/p/4428635.html


猜你喜欢
- 在使用struts多模块的,找到一些小技巧和经验,与大家分享一下。 关于多module的配置就不说了,只需要用不同的config
- Redis缓存中间件缓存是什么  所谓缓存就是数据交换的缓冲区(称作Cache [ k&aeli
- 目录前言1、什么是Filter2、过滤器实现拦截过程3、过滤器与 * 的不同之处1.过滤器:2. * :3.两者的区别:4、使用Filter
- 经常要检测某些IP地址范围段的计算机是否在线。有很多的方法,比如进入到网关的交换机上去查询、使用现成的工具或者编写一个简单的DOS脚本等等,
- VisualVM是JDK自带的一款全能型性能监控和故障分析工具,包括对CPU使用、JVM堆内存消耗、线程、类加载的实时监控,内存dump文件
- centos下搭建GitLab+Jenkins持续集成环境,供大家参考,具体内容如下1、安装JDKyum install -y java2、
- 多线程run方法中直接调用service业务类应注意Java多线程run方法里边使用service业务类会产生java.lang.NullP
- 方法一:利用两个指针p,q,首先将q往链表尾部移动n位,然后再将p、q一起往后移,那么当q达到链表尾部时,p即指向链表的倒数第n个节点。no
- 引言♀ 小AD:明哥,昨天气死我了,明哥要帮我出气。♂ 明世隐:咋了,有谁惹到你了。♀ 小AD:昨天辅助喷我小鲁班菜,我反手就对喷,然后竟然
- 众所周知,一般情况下我们使用android中的monkeyrunner进行自动化测试时,使用的是python语言来写测试脚本。不过,最近发现
- 将索引设置为只读可能听起来很奇怪,但在 Elasticsearch 中执行此类操作是可能的。想象一下这样一种情况,你特别需要限制对索引的写入
- 前言之前写过一篇介绍flutter集成到Android工程的文章,这次总结记录一下自己把flutter集成到iOS的流程,以及遇到的问题以及
- 很多时候需要先判断当前用户的网络,才会继续之后的一些处理逻辑。但网络类型获取这一块,我用我自己的的手机调试时遇到一些问题,这里记录一下。一加
- 1. 什么是AOPAOP (Aspect Oriented Programming)意为:面向切面编程,通过预编译方式和运行期 * 实现在
- 一、Java中锁的概念自旋锁:是指当一个线程获取锁的时候,如果锁已经被其它线程获取,那么该线程将循环等待,然后不断的判断锁是否能被成功获取,
- 一 关键pom<dependencies> <dependency> <groupId>or
- 本文实例为大家分享了unity实现手游虚拟摇杆的具体代码,供大家参考,具体内容如下using System.Collections;usin
- InetAddress类InetAddress类用来封装我们前面讨论的数字式的IP地址和该地址的域名。你通过一个IP主机名与这个类发生作用,
- 如下所示:@Overridepublic void onWindowFocusChanged(boolean hasFocus) {supe
- 有时候一些项目并不需要提供 Web 服务,例如跑定时任务的项目,如果都按照 Web 项目启动未免画蛇添足浪费资源为了达到非 Web 运行的效