① android aar包怎么用
如何在Android studio中,给android 项目添加外部lib引用。
在android studio中,有两种方式:
一种是jar包,一种是带资源文件的aar包,
jar: 只包含了class文件与清单文件 ,不包含资源文件槐茄孙,如图片等所有res中的文件。
aar: 包含jar包和资源文件,如图片等所有res中的文件
这里将着重介绍如何使用本地的aar包
工具/原料
Android studio
方法/步骤
新建一个Demo项目
新建好的项目结构如下图:
其中app是我们的主要mole,
libs下存放外部的library
build.gradle是配置App mole的,接下纳好来主要对其操作。
复制外部aar包到libs目录下。
修铅链改build.gradle 配置文件:
1:添加
repositories flatDir { dirs 'libs' }}
这个是添加一个本地仓库,并把libs目录作为仓库的地址。
2:修改dependencies:
添加一行:
compile(name:'usericonchooserutil', ext:'aar')
其中name就是libs目录下usericonchooserutil.aar文件名称,
ext,就是usericonchooserutil.aar的扩展名
重新编译项目:
从工具栏依次选择:"Build"-->"rebuild project"
编译完成后,在app/build/intermediates/exploded-aar/ a就可以看见我们引用的aar包内容了,其中jar目录下是jar文件,res下是我们aar包里的资源文件。
这个时候我们就可以在项目中使用第三包的类了,如下图:
② jar包与aar包文件的区别
两者区别:
*.jar:只包含了class文件与清单文件,不包含资源文件,如图片等所有res中的文件。
*.aar:包含所有资源,class以及res资源文件全部包含
如果你只是一个简单的类库那么使用生成的*.jar文件即可;如果你的是一个UI库,包含一些自己写的控件布局文件以及字体等资源文件那么就只能使用*.aar文件。
1. *.jar,JAR 文件就是 Java Archive File,顾名思意,它的应用是与 Java 息息相关的,是 Java 的一种文档格式。只包含了class文件与清单文件 ,不包含资源文件,如图片等所有res中的文件。找一个jar文件,然后修改后缀名为‘zip’或者‘rar’格式,然后解压该文件,打开解压后的文件夹,截图如下所示:
点击‘com‘文件夹就会看到里面全部猛丛是‘.class’文件。
2. *.aar,AAR(Android Archive)包是一个Android库项目的二进制归档文件。我们随便找一个aar文迅知卜件,然后修改后缀名为‘zip’或者‘rar’格式,然后解压该文件,打开解压后的文件夹,截图如下所示:(每个aar解压后的内容可能不完全一样,但是都会包含AndroidManifest.xml,classes.jar,res,R.txt)
*.aar文件中包含所有资源,class以及res资源文件。
使用
1. *.jar文件使用。
*.jar文件拷贝到libs目录,eclipse直接导入即可,AndroidStudio项目中添加:
重新编译即可完成。
2. *.aar文件使用。
*.aar文件使用有两种方式,一种是使用在线的(网上的),一种是添加本地的*.aar文件。网络加载,只要你知道*.aar文件在maven中的路径即可,此处不演示了。下面主要看看在Android Studio中如何加载本地的*.aar文件。
(1).把aar文件放在一个文件目录内,比如就放在libs目录内;
(2).在app的build.gradle文件添加如下内容;
(3).之后只需要添加一句gradle依赖便方便的引用了该aar文件;
至此,在Android Studio中加载本地的*.aar文件就结束,是不是很简单呢!需要补充一点,如果*.aar文件中引用了其他Maven 仓库的包,那么需要在gradle中添加依赖,否则在运行的时候,可能会报“Caused by: Java.lang.ClassNotFoundException”!
如何在Eclipse中使用aar文件
1.拿到aar文件后,解压。如不能解压,修改后缀为zip后解压(推荐工具7-zip,巨强大好用,能直接解压很多类型)。
解压后如下:
2.把classes.jar直接复制到自己的项目lib包下使用。推荐改名字后使用,要不亩穗然太乱。
3.在第一步解压好的目录下新建project.properties。写入target=android-22 android.library=true 保存。
4.删除aapt,jni等无用的文件夹以及R.txt文件等。
5.导入eclipse作为library使用给自己的项目。
---------------------
原文:https://blog.csdn.net/miao0967020148/article/details/79608516
③ 怎样打开aar文件
aar是用来发布的一个应用,可以把aar文件直接放到tomcat的webapp中,启动tomcat,坦粗就可以运行丛渗发布的应用让郑镇程序
④ android aar文件怎么使用
arr(Android Archive):名字是谷歌到的,至于中文叫什么我也不知道。不过好像依赖都要使用这样的包了。
首先说明我使用的android studio 版本是3.1.因为现在android studio的bug还不较多,所以你的版本能不能正常使用我就不敢说了。
如果你只是单纯的想使用actionbarsherlock的话,引用是十分简单的
dependencies {
// compile fileTree(dir: 'libs', include: '*.aar')
compile 'com.actionbarsherlock:actionbarsherlock:4.4.0@aar'
compile 'com.android.support:support-v4:18.0.+'
}
然后重新编译一下项目就行了。(ps 这两天看见群里面都在讨论引用第三方jar包,请看我的第一行注释,你只要新建一个libs的尘轮虚文件夹,然后把想要jar包复制到文件夹下,接着把注释那句复制到build文件中,修改一下(*.aar -> *.jar)就可以了)
但是我们要是使用本地的aar文件,我谷歌了两天总算是勉强能用了,请看我的实现过程,如果你有更好的请转告小弟共同进步
第一步 :生成aar文件
我的方法是通过maven-android-plugin来生成的,如果你使用过actionbarsherlock以前的版本的话,这个工具应该不陌派燃生,如果你连maven 都不知道的话,建议好好学习一下maven,虽然现在gradle很火 ,但是我还是最喜欢maven。
关于具体生成步骤不久不详细说了,文章最后贴出几个网址供大家学习使用,放心我按顺序给你们,只要一步一步的来绝对能成功
1 把你的maven版本提升到3.1.1
2 去github上clone下来 maven-android-sdk-deployer 这个项目https://github.com/mosabua/maven-android-sdk-deployer,按照使用说明安装android的版本
3 通过maven-android-plugin生成一个android项目
mvn archetype:generate
-DarchetypeArtifactId=android-quickstart
-DarchetypeGroupId=de.akquinet.android.archetypes
-DarchetypeVersion=1.0.11
-DgroupId=your.company
-DartifactId=my-android-application
4 修改pom
<?xml version="1.0" encoding="UTF-8"?>
<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd">
<modelVersion>4.0.0</modelVersion>
<groupId>com.lee.study.android</groupId>
<artifactId>NiMa</artifactId>
<packaging>aar</packaging>
<name>NiMa</name>
<properties>
<project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
<platform.version> 4.1.1.4
</platform.version>
<android.plugin.version>3.8.0</android.plugin.version>桐尘
</properties>
<dependencies>
<dependency>
<groupId>com.google.android</groupId>
<artifactId>android</artifactId>
<version>${platform.version}</version>
<scope>provided</scope>
</dependency>
</dependencies>
<build>
<finalName>${project.artifactId}</finalName>
<pluginManagement>
<plugins>
<plugin>
<groupId>com.jayway.maven.plugins.android.generation2</groupId>
<artifactId>android-maven-plugin</artifactId>
<version>${android.plugin.version}</version>
<extensions>true</extensions>
</plugin>
</plugins>
</pluginManagement>
<plugins>
<plugin>
<groupId>com.jayway.maven.plugins.android.generation2</groupId>
<artifactId>android-maven-plugin</artifactId>
<configuration>
<sdk>
<platform>16</platform>
<path>E:android_worksdk</path>
</sdk>
</configuration>
</plugin>
</plugins>
</build>
</project>
这是我的pom,打包类型改成aar,插件改成3.8版本,添加ANDROID_HOME到path。
5 执行 mvn install ,这样我们就得到了aar文件,和aar-class.jar文件,其实aar文件里面包含class.jar文件,但是我目前的版本必须手动导入到android studio中,这就是不完美之处。
第二步 导入到android studio中 创建libs文件夹,放入想要导入的文件
如果这一步你也搞定了,恭喜你就能和我一样使用依赖了
⑤ “android arr”和“jar的”区别是什么
两者区别:
*.jar:只包含了class文件与清单文件,不包含资源文件,如图片等所有res中的文件。
*.aar:包含所有资源,class以及res资源文件全部包含
如果你只是一个简单的类库那么使用生成的*.jar文件即可;如果你的是一个UI库,包含一些自己写的控件布局文件以及字体等资源文件那么就只能使用*.aar文件。
使用方式:
*.jar:拷贝到:libs目录,eclipse直接导入即可,AndroidStudio项目中添加:
[java] view plain
dependencies {
compile fileTree(include: ['*.jar'], dir: 'libs')
}
重新编译一凳颤次项目既可完成加载。
*.aar:有两种方式,分别为本地加载以及网络加载,由于网络加载涉及到发布到mavenCentral托管的问题这里不做讨论;另外eclipse很久没有使用了也不做讨论;在这里给大家说一种本地加载的方式,简单快捷。
这里演示的aar文件为:”genius.aar“
第一步:拷贝到:libs目录
第二步:build.gradle 配置文件中更改为
[java] view plain
repositories {
flatDir {
dirs 'libs'
}
}
dependencies {
compile(name:'genius', ext:'aar')
}
分别添加了”repositories“与更改了”dependencies“,然后重新编译一次项目就可以正常使用了。
这时打开你的项目地址”誉迅\build\intermediates\exploded-aar\“你会发现下面多了一个文件夹”genius“打开后能看见里枣虚败边包含了一个”classes.jar“文件与一些资源文件和”R.txt“文件。
这就是Android Studio自动解析了aar文件后出现的东西。
一.android studio引入aar包接入方式
1..File—>New—>New Mole—>Import .JAR/.AAR Package
2.Open Mole Settings—>Dependencies 添加依赖
完成aar包的引入