androidstudioaar
‘壹’ android Studio如何打包和引用AAR
在Android Studio中打包和引用AAR的步骤如下:
一、打包AAR
创建AAR模块:
- 在Android Studio中,首先创建一个新的Android Project。
- 然后,在项目中添加一个名为Library Project的模块。
配置build.gradle:
- 打开该模块的build.gradle文件。
- 将apply plugin: 'com.android.application'更改为apply plugin: 'com.android.library'。
- 删除applicationId行,因为AAR模块不需要应用程序ID。
编译并生成AAR:
- 在Android Studio中,选择Build菜单,然后选择Make Mole [MoleName]。
- 编译成功后,AAR文件将生成在[MoleName]/build/outputs/aar/目录下,文件名为[MoleName]debug.aar或[MoleName]release.aar。推荐使用release版本的AAR文件。
二、引用AAR
将AAR文件导入项目:
- 将生成的AAR文件复制到项目的libs目录下。
- 或者,可以直接在项目的build.gradle文件中通过implementation fileTree来引用libs目录下的所有AAR文件。
配置build.gradle依赖:
- 打开项目的build.gradle文件。
- 在allprojects块中的repositories部分,确保包含了flatDir { dirs 'libs' },这样Gradle就能从libs目录中找到AAR文件。
- 在模块的build.gradle文件中,添加对AAR文件的依赖,例如:implementation。
注意事项:
- 确保AAR文件的名称和路径在build.gradle文件中配置正确。
- 如果AAR文件依赖于其他库或资源,可能还需要在项目的build.gradle文件中添加相应的依赖。
- 使用release版本的AAR文件,以确保代码和资源已经过优化。
‘贰’ Android Studio项目如何快速打包成AAR包
在开发基于Android的投屏电视应用后,若要将其整合为Android SDK,方便其他项目使用,需对Android Studio项目进行打包成AAR包的操作。以下是快速打包的步骤:
首先,修改项目名:在app目录下的build.gradle文件中,找到默认配置部分,将相关代码进行修改或注释。完成修改后,点击Sync进行同步,然后进行Rebuild Projection操作。
其次,调整AndroidManifest.xml文件,将红框内的特定内容进行注释。确保只注释必要部分,以免影响应用功能。
最后,操作步骤如下:点击Android Studio右侧的gradle,选择build,执行assemble命令。打包后的AAR文件会在项目\app\build\outputs\aar目录下生成。
‘叁’ android studio aar怎么用
一. 简介
aar是一个类似于jar的文件格式。但是他们之间是有区别的。
jar:仅仅包含class和清单文件,没有资源文件。
aar:包含了class文件和资源文件。说白了就是Android的专属“jar”
将代码打包成aar文件,可以在一定程度上加快AndroidStudio的速度。
尤其是将Mole打包成aar文件,提升的效果很显着。
二. 如何得到aar
1. Mole的aar文件
将一个AndroidStudio项目中的Mole打包成aar其实很简单。
在每一个Mole的目录下面都会有这样一个文件夹:build\outputs\aar。
这个文件夹下面就放着这个Mole对应的aar文件。
一般情况下会有两个aar文件,一个debug版本,一个release版本。
我们选择release的就ok。
注意:
新建的Mole是没有这个文件夹的。这时,你可以使用 两种方法 生成这个文件夹
将整个项目运行一遍,这个文件夹会自动生成
执行命令 ./gradlew assembleRelease 也可以生成这个文件夹
Mole中的libs目录文件会随着项目的编译被打包进aar文件中,但是build.gradle中的引用库不会打包进aar文件中,这个需要 特别留意。如果你忽略了这个Mole的build.gradle中的引用库,很可能引发ClassNotFoundException异常。
2. 远程仓库的aar
在项目里面经常会引用一下远程仓库的依赖库。
这时,我们也可以将它以aar的形式引入到项目中。
这个依赖库的aar其实也很好找。
当你配置好一个依赖库以后,点击 Sync Now 。
AndroidStudio会自动下载这个库到C盘(windows)。你找到这个文件就可以了。
这里我使用的是Everything进行搜索,很方便就找到这个库的下载文件夹。其他操作系统就自行搜索吧,总之找见这个项目的下载文件夹就ok。
这个下载文件夹中包含了这个项目所需要的所有东西:包括aar、jar等文件。
后面会以一个例子详细讲解这个过程
注:
Everything是一个搜索软件,可以瞬间搜索全盘。
是一个非常实用的软件。但是很可惜只有windows版本。
官网地址:<a href="<a href="https://www.voidtools.com/" target="_blank">https://www.voidtools.com/</a>" target="_blank"><a href="https://www.voidtools.com/" target="_blank">https://www.voidtools.com/</a></a>
三. 如何使用aar
想要使用aar文件,需要经过以下几步:
1. 在app的build.gradle中加入以下配置
repositories {
flatDir {
dirs 'libs' // aar目录
}
}
2. 将aar文件拷贝到app/libs目录下
3. 在dependencies中加入aar引用
compile(name: 'zbar-release', ext: 'aar')
四. LeakCanary项目示例
因为Mole的例子比较简单,所以选择远程代码库作为示例。
这里使用一个经常使用的内存检测项目LeakCanary来做一个示例。
我们通常使用依赖来使用这个库:
debugCompile 'com.squareup.leakcanary:leakcanary-android:1.3'
releaseCompile 'com.squareup.leakcanary:leakcanary-android-no-op:1.3'
当Sync Now完成后,我们可以在C盘(windows)找见这个项目文件夹。
这个文件夹下面就有我们需要的两个依赖库:leakcanary-android和leakcanary-android-no-op
点开leakcanary-android文件夹,目录结构如下(1.3是对应的版本号):
leakcanary-android文件夹
打开最里层的文件夹,你会发现文件的类型主要有三种:
jar文件:有的项目是以jar文件形式提供
aar文件:有的项目是以aar文件形式提供
pom文件: (Project Object Model),实际上就是个xml,是对一些必要信息的说明。这里我们只关心一个节点信息:<dependencies>:声明依赖列表
我们用文本编辑器打开leakcanary-android文件夹下面的pom文件:
...
<dependencies>
<dependency>
<!--包组 id,通常是发布者拥有的域名的反向,以免跟别人的重复-->
<groupId>com.squareup.leakcanary</groupId>
<!--包 artifactId,其实就是组以下应该有一个更小的归类-->
<artifactId>leakcanary-analyzer</artifactId>
<!--版本号-->
<version>1.3</version>
<scope>compile</scope>
</dependency>
</dependencies>
..
当我们打开leakcanary-android的pom文件,
我们发现leakcanary-android依赖于leakcanary-analyzer的1.3版本。
同样的的我们打开leakcanary-analyzer 的pom文件,
发现leakcanary-analyzer依赖leakcanary-watcher和haha。
leakcanary-watcher和haha则没有依赖任何东西。
这样整个leakcanary-android导入本地的东西就是四个:
leakcanary-android
leakcanary-analyzer
leakcanary-watcher
haha
同样的方式去一层一层解析leakcanary-android-no-op,将所有需要的文件都导入到AndroidStudio中。这样整个LeakCanary就被我们真正实现本地化了。
debugCompile 'com.squareup.leakcanary:leakcanary-android:1.3'
releaseCompile 'com.squareup.leakcanary:leakcanary-android-no-op:1.3'
debugCompile(name: 'leakcanary-android-1.3', ext: 'aar')
compile files('libs/leakcanary-analyzer-1.3.jar')
compile files('libs/leakcanary-watcher-1.3.jar')
compile files('libs/haha-1.1.jar')
releaseCompile(name: 'leakcanary-android-no-op-1.3', ext: 'aar')
这样就将整个LeakCanary项目完全转换成了本地的依赖。
‘肆’ 如何在Android Studio添加本地aar包引用
1、新建一个Demo项目
2、新建好的项目结构如下图:
其中app是我们的主要mole,
libs下存放外部的library
build.gradle是配置App mole的,接下来主要对其操作。