Android Studio生成和引用aar
2015-11-23 12:45
495 查看
Android Studio中对一个库进行生成操作时将会同时生成*.jar与*.aar文件。
存储位置:
*.jar:build/intermediates/bundles/debug(release)/classes.jar
*.aar:build/outputs/aar/app-debug.aar
两者区别:
*.jar:只包含了class文件与清单文件,不包含资源文件,如图片等所有res中的文件。
*.aar:包含所有资源,class以及res资源文件全部包含
如果你只是一个简单的类库那么使用生成的*.jar文件即可;如果你的是一个UI库,包含一些自己写的控件布局文件以及字体等资源文件那么就只能使用*.aar。
生成方法:
修改build.gradle文件
1.apply plugin:'com.android.application'
-> apply plugin:'com.android.library'
2.注释applicationId "......"
}
3.注释AndroidManifest.xml中的内容,只保留下面的部分(否则安装后会出现两个图标)。
重新编译后,就会在上面相应的目录生成.jar和.aar。
使用方法:
1. *.jar:拷贝到:libs目录,eclipse直接导入即可,AndroidStudio项目中添加:
dependencies {
compile(name:'genius', ext:'aar')
}
重新编译一次项目既可完成加载。
2. 将生成的.aar文件,拷贝到libs目录下,然后修改build.gradle文件
注意:1. 确保.aar中所有资源文件(如activity_main.xml、drawable等等)和Activity的名称与调用者不一样。
2. 如果想在调用者中启动.aar中的Activity,需要在调用者AndroidManifest.xml中声明.aar的Activity。
存储位置:
*.jar:build/intermediates/bundles/debug(release)/classes.jar
*.aar:build/outputs/aar/app-debug.aar
两者区别:
*.jar:只包含了class文件与清单文件,不包含资源文件,如图片等所有res中的文件。
*.aar:包含所有资源,class以及res资源文件全部包含
如果你只是一个简单的类库那么使用生成的*.jar文件即可;如果你的是一个UI库,包含一些自己写的控件布局文件以及字体等资源文件那么就只能使用*.aar。
生成方法:
修改build.gradle文件
1.apply plugin:'com.android.application'
-> apply plugin:'com.android.library'
2.注释applicationId "......"
defaultConfig {
// applicationId "com.xinyunlian.reglogin"
}
3.注释AndroidManifest.xml中的内容,只保留下面的部分(否则安装后会出现两个图标)。
<?xml version="1.0" encoding="utf-8"?> <manifest xmlns:android="http://schemas.android.com/apk/res/android" package="......" > </manifest>
重新编译后,就会在上面相应的目录生成.jar和.aar。
使用方法:
1. *.jar:拷贝到:libs目录,eclipse直接导入即可,AndroidStudio项目中添加:
dependencies {
compile(name:'genius', ext:'aar')
}
重新编译一次项目既可完成加载。
2. 将生成的.aar文件,拷贝到libs目录下,然后修改build.gradle文件
repositories { flatDir { dirs 'libs' } }
dependencies { ......compile (name:'...', ext:'aar') }
注意:1. 确保.aar中所有资源文件(如activity_main.xml、drawable等等)和Activity的名称与调用者不一样。
2. 如果想在调用者中启动.aar中的Activity,需要在调用者AndroidManifest.xml中声明.aar的Activity。
相关文章推荐
- Android编程实现自定义进度条颜色的方法
- 详解 Android Activity 生命周期
- android shape的使用
- 【Android】Gson-以类模板的方式解析复杂JSON
- Android Resource Types之String简介
- Android ViewGroup的理解与封装
- Android4.0平板开发之隐藏底部任务栏的方法
- android WebView与JS的交互
- Android学习笔记(二)之电话拨号器
- android studio使用教程(七) 导入jar和library
- 设计模式之单例模式
- Android 百度地图定位半径圈范围自定义
- android activity监听加载完毕事件
- Android编程设置全屏的方法实例详解
- Android完美解决The specified child already has a parent. You must call removeView() on the child
- Android之Matrix用法
- Android 绘图机制:canvas初解
- Android studio 导入github工程
- Android MVP框架MVPro的使用和源码分析
- Android设计模式--适配器模式