我想在Android Studio中为我的库创建一个aar文件,我会使用一个jar选项,但我的库有资源。
知道如何从库中创建aar文件吗?
我想在Android Studio中为我的库创建一个aar文件,我会使用一个jar选项,但我的库有资源。
知道如何从库中创建aar文件吗?
当前回答
构建包/apk
.aar文件将在build/outputs/aar文件夹中生成。
其他回答
在遵循同一线程中hcpl回答中提到的第一步和第二步之后,我们添加了'*。Aar '], dir: 'libs'在our-android-app-project-based-on-gradle/app/build。Gradle文件如下所示:
...
dependencies {
implementation fileTree(include: ['*.jar', '*.aar'], dir: 'libs')
...
我们的gradle版本是com.android.tools.build:gradle:3.2.1
最终在这里找到了解决方案- https://stackoverflow.com/a/49663101/9640177
实现文件(“libs / aar-file.aar”)
编辑 我有一个更复杂的问题——我为库模块设置了minifyEnabled为true。
创建AAR
在创建时遵循以下步骤。
文件->新建->新建模块->Android库并创建。
生成AAR
按照以下步骤在android studio的右上方窗格转到gradle。
Gradle->下拉库名称->任务->构建->组装或组装释放
AAR将在build/outputs/ AAR /中生成
但如果我们想要在项目目录中的特定文件夹中生成AAR,请修改您的应用程序级别构建。Gradle如下所示
defaultConfig {
minSdkVersion 26
targetSdkVersion 28
versionCode System.getenv("BUILD_NUMBER") as Integer ?: 1
versionName "0.0.${versionCode}"
libraryVariants.all { variant ->
variant.outputs.all { output ->
outputFileName = "/../../../../release/" + ("your_recommended_name.aar")
}
}
}
现在它将在项目目录中创建名为“release”的文件夹,该目录将具有AAR。
更新后的答案
在最新版本中不支持特定路径。请在库的构建中添加以下代码。Gradle和重建项目。重建“aar”后,将项目结构从Android更改为项目->导航到您的库->build->outputs->aar
android {
defaultConfig {
minSdkVersion ..
targetSdkVersion ..
versionCode ...
versionName "1"
testInstrumentationRunner "androidx.test.runner.AndroidJUnitRunner"
consumerProguardFiles 'consumer-rules.pro'
}
libraryVariants.all { variant ->
variant.outputs.all { output ->
outputFileName = "${archivesBaseName}_${variant.name}_${defaultConfig.versionName}.aar"
}
}}
要将“aar”导入项目,请检查下面的链接。
如何手动包括外部aar包使用Gradle为Android
[JAR vs AAR]
.jar由apply plugin: 'java-library'生成
.aar是由apply plugin: 'com.android.library'生成的
File -> New -> New Module... -> Android Library
构建包/apk
.aar文件将在build/outputs/aar文件夹中生成。