AS中jar包和aar包区别及导入导出
- 摘要:jar包和aar包区别*.jar:只包含class文件与清单文件,不包含资源文件,如图片等所有res中的文件。*.aar:包含所有资源,class以及res资源文件全部包含如果你只是一个简单的类库那么使用生成的*.jar文件即可;如果你的是一个UI库,包含一些自己写的控件布局文件以及字体等资源文件那么就只能使用*.aar文件。jar包和aar包导出1、新建库步骤:File——New——NewModule——AndroidLibrary2、编译或生成工程步骤:选中类库,点击Bu
- jar包和aar包区别
*.jar:只包含class文件与清单文件,不包含资源文件,如图片等所有res中的文件。
*.aar:包含所有资源,class以及res资源文件全部包含
如果你只是一个简单的类库那么使用生成的*.jar文件即可;如果你的是一个UI库,包含一些自己写的控件布局文件以及字体等资源文件那么就只能使用*.aar文件。
jar包和aar包导出
1、新建库
步骤:File——New——New Module——Android Library
2、编译或生成工程
步骤:选中类库,点击Build——Make Module ‘类库名’/Make Selected Modules
3、获取jar包/aar包
编译库后,在类库的build文件夹下,jar包和aar会同时生成,具体目录如下:
- 在build/intermediates/bundles/release目录下的classes.jar
- arr包的路径:build/outputs/aar/类库名.aarjar包和aar包导入其中jar包的导入,在博客 Android Studio 工程依赖有所介绍,
而aar包导入有两种方法1、通过gradle(个人推荐)
把aar复制到工程应用app下的libs目录中
在app的build.gradle中添加一个本地仓库,并把libs作为仓库地址:
// aar包添加1/2
repositories {
flatDir{
dirs 'libs'
}
}修改dependencies。添加一行:compile(name:’mylibrary-debug’, ext:’aar’)。name就是mylibrary-debug.aar的文件名,ext就是mylibrary-debug.aar扩展名
dependencies {
compile fileTree(dir: 'libs', include: ['*.jar'])
compile 'com.android.support:appcompat-v7:23.2.1'
// aar包添加2/2
compile(name:'mylibrary-debug', ext:'aar')
}重新编译。编译成功后,在build/intermediates/exploded-aar目录下能看到mylibrary-debug.aar包的内容了。jars下是class文件,res下是资源文件2、界面导入
1、File——New——New Module——Import .JAR/.AAR Package(jar包也可以这样导入)
2、选择aar包所在的路径,一般还是放置在libs目录下。
3、点击Finish按钮,项目会重新构建。构建成功后,Projec结构图会多出添加的类库结构目录(以mylibrary-debug为例 ),类库将变成一个带茶杯的文件夹,且会自动添加一个iml文件
4、添加到app的依赖中去。Project Structure——app——Dependencies中,添加Module dependency,选择要添加类库名,添加成功后,项目目录下的duild.gradle文件,会自动添加下面一条语句。
dependencies {
。。。
compile project(':mylibrary-debug')
}参考链接:
http://blog.csdn.net/sugaryaruan/article/details/47011833
http://blog.csdn.net/a10615/article/details/51649520
Android开发随手记录-AS导出jar包
原文:http://www.jianshu.com/p/8fb1c58ac27a
自己封装了一个Http框架,想使用Android Studio导出jar包,以前Eclipse直接有个Export,可以直接导出,之从Google说不支持Eclipse,我是一面开心,一面忧伤。开心的是总算有个好的IDE来开发app,忧伤的是AS相对Eclipse变化很大,编译脚本变成了Gradle,各种导包操作都有 差异,平时遇到一些编译错误根本无从下手,只能默默百度。
下面把今天导出jar的过程记录一下:
修改项目build.gradle中的apply pluginapply plugin: 'com.android.library'
增加以下配置:
task makeJar(type: Copy) {
delete 'build/libs/mysdk.jar'
from('build/intermediates/bundles/release/')
into('build/libs/')
include('classes.jar')
rename ('classes.jar', 'mysdk.jar')
}
makeJar.dependsOn(build)完整配置
apply plugin: 'com.android.library' android {
compileSdkVersion 21
buildToolsVersion "21.1.2" defaultConfig {
minSdkVersion 14
targetSdkVersion 21
versionCode 1
versionName "1.0"
}
buildTypes {
release {
minifyEnabled false
proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro'
}
} lintOptions {
abortOnError false
}
} dependencies {
compile fileTree(dir: 'libs', include: ['*.jar'])
compile 'com.android.support:appcompat-v7:22.0.0'
compile 'com.google.code.gson:gson:2.3.1'
}
task makeJar(type: Copy) {
delete 'build/libs/mysdk.jar'
from('build/intermediates/bundles/release/')
into('build/libs/')
include('classes.jar')
rename ('classes.jar', 'mysdk.jar')
} makeJar.dependsOn(build)ok, 主要是这个配置。配置完,如果是在windows直接执行以下命令
Paste_Image.pngmac用户,执行./gradlew makeJar
Paste_Image.png好了,快去试试吧。
AS中jar包和aar包区别及导入导出的更多相关文章
- Android Studio下导出jar包和aar包
Android Studio下导出jar包和aar包 jar包和aar包的区别 步骤 1. 创建Android工程 创建工程比较简单,不错复述 2. 创建一个Library(Module) 创建了一个 ...
- SQL Server中bcp命令的用法以及数据批量导入导出
原文:SQL Server中bcp命令的用法以及数据批量导入导出 1.bcp命令参数解析 bcp命令有许多参数,下面给出bcp命令参数的简要解析 用法: bcp {dbtable | query} { ...
- Laravel 5 中使用 Laravel Excel 实现 Excel/CSV 文件导入导出功能
1.简介 Laravel Excel 在 Laravel 5 中集成 PHPOffice 套件中的 PHPExcel,从而方便我们以优雅的.富有表现力的代码实现Excel/CSV文件的导入和导出. 该 ...
- 在 Laravel 5 中使用 Laravel Excel 实现 Excel/CSV 文件导入导出功能
1.简介 Laravel Excel 在 Laravel 5 中集成 PHPOffice 套件中的 PHPExcel ,从而方便我们以优雅的.富有表现力的代码实现Excel/CSV文件的导入和 导出 ...
- Access中一句查询代码实现Excel数据导入导出
摘 要:用一句查询代码,写到vba中实现Excel数据导入导出,也可把引号中的SQL语句直接放到查询分析器中执行正 文: 导入数据(导入数据时第一行必须是字段名): DoCmd.RunSQL &quo ...
- android studio 使用jar包,arr包和怎么使用githup开源项目中的aar包或module
我这里的android studio的版本是2.2.3版本 一.现在大家都用android studio了,就有人问怎么使用jar包 其实使用jar包比较简单 直接吧jar放入工程的app目录下的li ...
- android studio 生成aar包并在其他工程引用 (导入)aar包
1.aar包是Android studio下打包android工程中src.res.lib后生成的aar文件,aar包导入其他android studio 工程后,其他工程可以方便引用源码和资源文件 ...
- (转载) Android studio如何生成aar包
Android studio如何生成aar包 标签: Android studio如何生成aaAndroid studio aarAndroid 如何生成aar包 2016-12-21 14:42 1 ...
- android studio生成aar包并在其他工程引用aar包
1.aar包是android studio下打包android工程中src.res.lib后生成的aar文件,aar包导入其他android studio 工程后,其他工程可以方便引用源码和资源文件 ...
随机推荐
- Codeforces Round #527 (Div. 3) . F Tree with Maximum Cost
题目链接 题意:给你一棵树,让你找一个顶点iii,使得这个点的∑dis(i,j)∗a[j]\sum dis(i,j)*a[j]∑dis(i,j)∗a[j]最大.dis(i,j)dis(i,j)dis( ...
- ERROR [main] master.HMasterCommandLine Master exiting
2018-05-18 07:07:26,257 INFO [main-SendThread(localhost:2181)] zookeeper.ClientCnxn: Opening socket ...
- vue全局引入scss文件(推荐)
<template> <div id="app"> <router-view/> </div> </template> ...
- 51nod 1035 最长的循环节
正整数k的倒数1/k,写为10进制的小数如果为无限循环小数,则存在一个循环节,求<=n的数中,倒数循环节长度最长的那个数,假如存在多个最优的答案,输出所有答案中最大的那个数. 1/6= 0.1( ...
- 一文掌握 Linux 性能分析之 CPU 篇
本文首发于我的公众号 Linux云计算网络(id: cloud_dev),专注于干货分享,号内有 10T 书籍和视频资源,后台回复「1024」即可领取,欢迎大家关注,二维码文末可以扫. 平常工作会涉及 ...
- CIA402状态转换图
CIA402状态转换如下图所示: 要想改变参数并使其生效,需要先将状态转换到ready,然后修改要配置的参数,再使其运行(operation enabled). 要发送的报文顺序基本如下: 1) ...
- 堆溢出学习笔记(linux)
本文主要是linux下堆的数据结构及堆调试.堆溢出利用的一些基础知识 首先,linux下堆的数据结构如下 /* This struct declaration is misleading (but a ...
- 【原创】大叔算法分享(4)Cardinality Estimate 基数计数概率算法
读过<编程珠玑>(<Programming Pearls>)的人应该还对开篇的Case记忆犹新,大概的场景是: 作者的一位在电话公司工作的朋友想要统计一段时间内不同的电话号码的 ...
- 爬虫高性能 asyncio库 twisted库 tornado库
一 背景知识 爬虫的本质就是一个socket客户端与服务端的通信过程,如果我们有多个url待爬取,只用一个线程且采用串行的方式执行,那只能等待爬取一个结束后才能继续下一个,效率会非常低. 需要强调的是 ...
- Redis 数据结构之dict
上篇文章<Redis数据结构概述>中,了解了常用数据结构.我们知道Redis以高效的方式实现了多种数据结构,因此把Redis看做为数据结构服务器也未尝不可.研究Redis的数据结构和正确. ...