Android Studio创建aar或jar库模块

Android sdk工程搭建(aar) unity 与 Android 的交互 阅读详情

我们开发时,经常需要给合作方提供aar,或jar库文件,这个是如何使用Android Studio创建的呢?

创建Module

在Android Studio中新建一个APP项目,然后在此APP项目中File–New–New Module,创建一个Module
,其中类型选择Android Library.
在这里插入图片描述

然后,配置对应的Library name,Module name,Package name:
在这里插入图片描述

在mylibrary的Module中,打开build.gradle,我们配置生成的aar名字:
在这里插入图片描述

def releaseTime() {
    return new Date().format("yyyy_MM_dd", TimeZone.getTimeZone("GMT+8"))
}
    buildTypes {
        release {
            minifyEnabled false
            proguardFiles getDefaultProguardFile('proguard-android-optimize.txt'), 'proguard-rules.pro'
            android.libraryVariants.all { variant ->
                variant.outputs.all {
                    outputFileName = "mylibrary_${defaultConfig.versionName}_${releaseTime()}.aar"
                }
            }
        }
    }

其,完整build.gradle内容:

apply plugin: 'com.android.library'


def releaseTime() {
    return new Date().format("yyyy_MM_dd", TimeZone.getTimeZone("GMT+8"))
}

android {
    compileSdkVersion 29
    buildToolsVersion "29.0.2"

    defaultConfig {
        minSdkVersion 28
        targetSdkVersion 29
        versionCode 1
        versionName "1.0"

        testInstrumentationRunner "androidx.test.runner.AndroidJUnitRunner"
        consumerProguardFiles 'consumer-rules.pro'
    }

    buildTypes {
        release {
            minifyEnabled false
            proguardFiles getDefaultProguardFile('proguard-android-optimize.txt'), 'proguard-rules.pro'
            android.libraryVariants.all { variant ->
                variant.outputs.all {
                    outputFileName = "mylibrary_${defaultConfig.versionName}_${releaseTime()}.aar"
                }
            }
        }
    }

}

dependencies {
    implementation fileTree(dir: 'libs', include: ['*.jar'])
    implementation 'androidx.appcompat:appcompat:1.0.2'
    testImplementation 'junit:junit:4.12'
    androidTestImplementation 'androidx.test.ext:junit:1.1.0'
    androidTestImplementation 'androidx.test.espresso:espresso-core:3.1.1'
}

通过这个文件,我们也可以看到,Module的配置方式为:

apply plugin: 'com.android.library'

而APP应用的配置方式为:

apply plugin: 'com.android.application'

编译后,生成的aar文件:

mylibrary/build/outputs/aar/mylibrary_1.0_2020_06_22.aar

生成为jar文件:

mylibrary/build/intermediates/packaged-classes/debug/classes.jar

三方应用使用aar文件

将我们生成的aar,提供给三方应用。
在这里插入图片描述
我们在目录下创建libs,将生成aar库复制到此目录下,并在build.gradle文件中,将aar库添加到项目中。如上图

implementation fileTree(dir: 'libs', include: ['*.jar','*.aar'])

然后,在我们的源码中调用UtilHelper.onDo:

import com.android.mylibrary.UtilHelper;

public class MainActivity extends AppCompatActivity {

    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);
        init();
    }

    private void init() {
        UtilHelper.onDo("test_aar");
    }
}

三方应用使用jar文件

将我们生成的jar,提供给三方应用。
在这里插入图片描述
我们在目录下创建libs,将生成jar库复制到此目录下,并在build.gradle文件中,将jar库添加到项目中。如上图

implementation files('libs/mylib.jar')

然后,在我们的源码中调用UtilHelper.onDo:

import com.android.mylibrary.UtilHelper;

public class MainActivity extends AppCompatActivity {

    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);
        init();
    }

    private void init() {
        UtilHelper.onDo("test_jar");
    }
}
Android Studio打包AAR Android AAR文件是Android Archive文件的缩写,是一种Android应用程序存档文件格式,类似于JAR文件格式。AAR文件包含已编译的代码和资源文件,可以被其他Android应用程序引用和使用。AAR文件可以包含多个类库和资源文件,可以在项目中使用Gradle依赖关系来引用和使用。它在Android Studio中被广泛使用,可以通过Gradle构建系统在Android项目中使用。AAR文件通常用于在Android应用程序中共享代码和资源,提高代码复用性和构建效率。 阅读详情

相关推荐

Android Studio 将Library打包成jar或aar包

        在eclipse中导出jar包,对于老司机们来说再熟悉不过了,对于新手来说也很简单(不知道还有没有Android新手在用eclipse开发工具了),鼠标咔咔几下jar包就出来了。不过,AS中打jar包也挺简单,就是多几行代码而已。一、打包成jar        首先自己新建一个工程,然后添加module并依赖;如下图:        slidingmenuhbh为添加的librar...

猿小侯的博客 6774

Android aar包的生成与使用

最近用Android Studio开发Android时,会经常接触到aar包(Java Archive),aar包含所有资源,class以及res资源文件全部包含。

Ai1114的博客 8759

【MAUI导入.AAR或.JAR包流程】

解决MAUI项目中导入AAR和JAR包的问题

liuyuan8886的博客 1434

Android module 打包成aar或jar

新建moudle 点击assemble 编译即可生成的aar在该路径下使用:导入aar到libs下 在gradle下引入对应的aar 即可。

xiaowang_lj的博客 2205

Android Studio工程项目打包成SDK(jar或aar格式)

##Android工程项目打包成SDK 在app的gradle下进行设置: 将apply plugin: ‘com.android.application’ 改为apply plugin: ‘com.android.library’; 注释或删掉applicationId “com.library.mylibrary”; 然后sync,接着Rebuild Project,成功后...

androdi_ying的博客 1799

方库 Android:使用Android库进行开发

Android库是开发Android应用程序的重要工具,它们提供了丰富的功能和组件,帮助开发者更加高效地构建应用程序。本文介绍了如何引入和配置Android库,并提供了使用库文件的示例代码。b. 使用Gradle依赖引入库文件:在项目的build.gradle文件中,添加对库文件的依赖。在使用库文件之前,开发者应该仔细阅读库的文档,了解其提供的功能和使用方法。引入库文件:在创建好的项目中,我们可以通过两种方式引入库文件。配置库的使用:完成库文件的引入后,我们需要配置库的使用。

OwxLinux的博客 246

Android开发~制作JAR包

一、概述(开发环境Android Studio 1.0.1) 在项目开发过程中,当我们项目积累越来越多,有一些公用的代码可以重用,或者做一些SDK类型项目的时候就需要打包自己的JAR了。之前如果使用eclipse开发android项目,打包JAR的例子网上可以找到很多,但切换到使用Android Studio,新的问题就又出现了。 二、使用Android Studio制作JAR 1、新建项目

阿福的专栏 6181

从零开始:H20服务器上DeepSeek R1 671B大模型部署与压力测试全攻略

最近,我有幸在工作中接触到了DeepSeek R1 671B模型,这是目前中文开源领域参数量最大的高质量模型之一。DeepSeek团队在2024年推出的这款模型,以其惊人的6710亿参数量和出色的推理性能,引起了业界广泛关注。作为一名AI基础设施工程师,我有机会在H20服务器上部署这个庞然大物,并对其进行了全面的压力测试。这篇文章将详细记录我的部署过程和性能测试方法,希望能为大家提供一些参考。💡为什么选择DeepSeek R1?超大规模参数量(671B)优秀的中英文理解能力开源可商用的许可证。

wangli的博客 1万+

Android studio 打包aar和.jar文件

Android 开发中对aar包和.jar包的使用必不可少,下面来总结一下新建一个项目为MyaarTest的工程,在file–>new moudle–>选择Androidlibrary创建一个名称为aartest的library,在这里定义自己的代码;其中生成aar包的方式有两种,一直是直接运行程序,另外一种是如上图所示aar包的引用: 在app的build中添加如下代码:其中//引用libs文

www121104115的博客 446

重访时间与覆盖分析的stk操作

1.打开stk 2.创建一个新的场景,命名为Test,选择地球为场景星球,若为金星,可在Central Body里选择Venus(金星自转周期慢,自转周期243天,卫星轨道变化不明显)(其中start stop时间可设置长一些) 3.插入一个AreaTarget或者place,以AreaTarget为例 选择Pattern,Add三个点(用法可见前面的博客,有时候编程的代码也可以帮助理解stk的操作) 4.插入Satellite,选择Orbit Wizard(若想设置卫星的六根数也可

weixin_42664107的博客 1万+

Anroid8.1 强制修改系统可以adb remount

在Android6.0 (Android M)user版本上,发现使用adb root后再adb remount系统之后会提示这样信息:remount of /system failed: Read-only file system,这是不能对system分区进行操作,提示没有写权限,为只读文件系统Read-only file system,因为系统本身在user就不支持可写操作,我们就不能adb push来调试apk,如果想调试apk就需要修改system、vendor权限问题。 如下现象: C:\Use

wq892373445的博客 1407

Android Studio 知识储备 之 ☀️ 轻松搞定 “jar和aar“ 两兄弟 的导入与导出

本篇文章介绍如何在android Studio 中打包aar和jar,很简单,快来学习一下吧。Android Studio 使用心得 之 AS中jar包和aar包的导入与使用

努力前行,总会成为自己心中的那道光 7万+

2022(一等奖)B360基于Arcpy与SVM的滑坡易发性评价

此外,在ArcGIS平台下,“易发性图预测(多进程)”工具的运行时间为2h 48m 3s,“易发性图预测(单进程)”工具的运行时间为5h 19m 27s,运行时间缩短了近2h 31m 24s,运行效率提高了47.39%。在ArcGIS Pro平台下,“易发性图预测(多进程)”工具的运行时间为20m 12s,“易发性图预测(单进程)”工具的运行时间为1h 26m 47s,将运行时间缩短了近1h 6m 35s,运行效率提高了76.72%。滑坡的发生受各种影响因素的影响,目前,影响因素的选择没有一个统一的标准。

2301_77310370的博客 1467

Android进阶——Android Studio把库Module打包成jar包和aar包小结

引言 Android studio没有像Eclipse一样提供便捷的图形界面打包成Jar包,而且也没有默认的打包Jar包的gradle脚本,如果需要把一个库Module打包成Jar包,需要自己在对应的库Module下对应的gradle.build脚本编写相应的gradle脚本 AndroidStudio项目打包成jar 前言:在eclipse中我们知道如何将一个项目导出为jar包,现在普遍A

最美不过,心中有梦,身旁有你! 7292

NVIDIA 2025 Board Design Engineer 校招笔试全解析:从基础门电路到理想放大器设计

本文详细解析了NVIDIA 2025届板级设计工程师校招笔试的核心考点与解题策略。内容涵盖从基础门电路、CMOS实现NOR门,到开关电源CCM/DCM模式波形分析与效率计算,以及理想运放电路设计与稳定性优化。旨在帮助考生构建硬件知识体系,掌握工程思维,顺利通过NVIDIA Board Design Engineer校招笔试。

weixin_29172201的博客 195

Robot Framework 7.0 报告解析

本文深入解析 Robot Framework 7.0 新增的 JSON 报告功能,手把手教你如何从 output.xml 转换为结构清晰的 output.json,并通过 Python 脚本提取关键测试指标。文章附完整示例、命令、解析脚本,支持导出为 CSV 和 Markdown,方便接入可视化看板、群通知和 CI 流程。适用于测试自动化、质量平台建设和回归趋势分析场景。

点点寒彬的博客 264

Android Studio Project 中Module打包成aar包或jar

一:说明 将一个独立的应用嵌入其他应用当中; 相关方法有两种: 第一种是将被嵌入的应用打包成 jar 包,但是这样的局限性是无法将被嵌入的应用所使用的资源性文件一起打包; 第二种是将被嵌入的应用打包成 aar 包,这也是 Android Studio 的一种新特性,可以将应用所使用的资源性文件一起打包; 如果Project 中 Module 是一个应用,则在 Module 的 build.gradle 文件中定义属性为:apply plugin: 'com.android.application'

u012693479的博客 6743

基于XGBoost的混凝土力学性能预测系统

本文介绍了一个基于XGBoost算法的混凝土力学性能预测系统。该系统通过模拟生成3000组混凝土配合比数据(包含水灰比、水泥用量和龄期三个关键特征),利用XGBoost强大的非线性建模能力预测混凝土抗压强度。研究背景源于传统混凝土性能测试方法耗时耗力的痛点,该系统可显著减少实验次数,优化配合比设计。系统实现包括:数据生成与特征工程(模拟真实工程数据并添加噪声和异常值)、XGBoost模型构建、以及预测性能评估。XGBoost算法因其处理非线性关系能力强、鲁棒性好等优势被选用,可为智能建造和数字化施工提供技术

huanghm88的专栏 129

如何在安卓(Android studio)项目中导入模块、jar包、和aar包

安卓(Android studio)编程中,我们常需要引用”别人写的功能“,以扩展app的功能,”别人写的功能“主要有模块、jar包、和aar包三种方式。 下面说一下调用(引用)三者的方法。   模块:   菜单file->new->import moudle->选择需要的模块。然后在在build.gradle(app)中添加依赖implementation project(’:模块名’)。完成。   jar包:   1.左侧project标签,切换到project。()   2.将jar

wstcl的博客 7708

ADS基础教程20 - 电磁仿真(EM)参数化仿真

一、引言二、参数化设置1.参数定义2.参数赋值3.创建EM模型和符号四、总结1)在Layout视图,菜单栏中选中EMComponent2)在弹出的参数编辑框中,采用标称/扰动()设计。使用子网(Subnetwork)参数。这些方法是互斥的,在为单个组件定义参数时不能将它们组合起来。标称/扰动(Nominal/Perturbed)参数使用平面化布局场景,并且只包含端口和原始图形形状(如多边形、矩形和圆形)时定义。

XZ_ZC的博客 4029

NTscan扫描工具

ntscan是一个扫描器,可以扫描没有密码和弱密码的共享,先到配置文件中填写猜测的用户名和密码,扫描过程中右侧出现的是扫描日志。

Android Studio如何打jar包和aar包并使用

生成jar包

jack22001的博客 6155

SAP B1中文培訓教材_SDK

公司内部培训资料,对开发工具 ,DIAPI, UIAPI,Add-ON有详细解说

Android studio 创建aar包给Unity使用

打开Android studio,file->new project 创建一个项目承载这个模块,接着选择。gradle 就是用编程的方式控制编译的过程,这玩意太灵活了,对于我来说能用就完了。在最初的时候没有gradle的工具菜单,都是使用方式三进行打包。平台设计的 ,可以包含Android的专有内容,比如。gradle 咋说呐,不太懂,简单理解就是和。是整个项目的编译文件,也就是会编译所有模块。接下来一步一步跟我来。是类库的编译文件,只会编译当前模块。切换到当前项目的根目录,使用。

我是香菜 1975

文档:亲测可用解决vnc灰屏,黑屏,鼠标大黑叉情况

主要解决vnc-viewer灰屏,黑屏,鼠标大黑叉等现象,详细见文档。

Outlook Express 6 (OE6) for Win7/Win8/Win10

英文版 Outlook Express6.0, 兼容Win7/Win10/WinXP,解压就可用。

如何在Android Studio添加aar包或jar包引用

最近刚从eclipse换到Android Studio开发,发现有很多地方与eclipse不大相同 ,还不怎么习惯. 在开发是有事会用到第三方jar包 或者aar包 ,下面说一下这两种包的引用方法: 首先看一下android studio 的项目基本结构: 1.导入jar包: a. 将使用的jar包直接...

jim5252521的博客 1万+

Android studio 生成aar包或jar包

在build.gradle文件中添加 apply plugin: 'com.android.library' def releaseTime() { def date = new Date() def formattedDate = date.format('yyyyMMddHHmm') return formattedDate } android { c...

u013441613的博客 748

Android Studio 打包及引用 aar

简要介绍了生成 aar 以及其他工程引用 aar 文件的一些方法。

牧秦丶 2万+
上一篇: android开发之Serializable与Parcelable的使用
下一篇: android开发浅谈之Window和WindowManager
hfreeman2008
hfreeman2008 领域专家: 操作系统技术领域 领域专家: 操作系统技术领域
博客等级 码龄17年 449粉丝 263原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

hfreeman2008

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值