AndroidStudio中的包管理
来源:互联网 发布:电商团队美工工资提成 编辑:程序博客网 时间:2024/06/08 14:48
AndroidStudio中导入第三方包的方法
方法一:第一种是打开工程所在Project Structure,然后选择Dependencies,点击那个加号选择File Dependency ,然后再Libs文件夹中选择要导入的jar包。
方法二:第一种是打开工程所在Project Structure,然后选择Dependencies,点击那个加号选择File Dependency ,然后再Libs文件夹中选择要导入的jar包, 这样也可以导入成功。
其他与包管理相关的知识点:
Gradle 项目可以依赖于其它组件。这些组件可以是外部二进制包,或者是其它的 Gradle 项目。在本例中, app/build.gradle 中有以下内容:
dependencies {
compile fileTree(dir: 'libs', include: ['*.jar'])
compile 'com.android.support:appcompat-v7:21.0.3'
compile project(':library')
compile 'com.nineoldandroids:library:2.4.0'
}
Local packages(本地包)
compile fileTree(dir: 'libs', include: ['*.jar'])
引用 libs 目录下的所有的 .jar 文件。如果你指向引用 libs 目录下中一个指定的 jar ,你可以这么设置:
compile files('libs/xx.jar')
Remote artifacts(远程文件)
compile 'com.android.support:appcompat-v7:21.0.3'
引用 21.0.3 版本的 appcompat-v7 。
在 Android Studio中,使用 android support ,需要在 SDK 中下载 Android Support Repository ,且项目中使用的版本不能大于 SDK 中的版本。当你的 SDK 中已经下载指定版本的 Android Support Repository ,即使没有联网,你也是可以在 Android Studio 中依赖对应的文件。如果你的 SDK 没有下载指定版本的 Android Support Repository ,即使你现在连着网,也会出错。
compile 'com.nineoldandroids:library:2.4.0'
引用 2.4.0 版本的 NineOldAndroids 。需要联网下载。
代码仓库管理
使用 maven 和 ivy(Apache Ivy is a popular dependency manager focusing on flexibility and simplicity)时需要在 build.gradle 中将仓库添加到列表中。
buildscript {
repositories {
jcenter()
}
}
allprojects {
repositories {
jcenter()
}
}
mavenCentral() :表示依赖从 Central Maven 2 仓库中获取。
jcenter() :表示依赖从 Bintary’s JCenter Maven 仓库中获取。
mavenLocal() :表示依赖从本地的Maven仓库中获取。
Library Project(库项目)
compile project(':library')
引用名称为 library 的 module 。需要注意的是,被引用的 module 需要在 {@projectName}/settings.gradle 文件中进行注册。
我们可以观察到,library/build.gradle 中使用的 apply plugin 为 'com.android.library'。用以标记这是一个Android Library Project 。
当然,你也可以依赖一个 Java Project ,apply plugin 为 'java'。
补充内容
关于依赖更多的补充内容如下:
dependencies {
// 引入 jar 包。
// 引用某一个特定的jar。
compile files('libs/xx.jar')
// 引用libs文件夹下除xx.jar以外所有的jar。
compile fileTree(dir: 'libs', include: ['*.jar'], exclude: ['xx.jar'])
// so包在0.8版本的Android Studio中的目录更改为@{ModuleName}/src/main/jniLibs。且可以不用在此处配置so了。
// 从 maven 库中引入。
//compile 'com.github.chrisbanes.actionbarpulltorefresh:extra-abc:0.9.2'
// 引用 lib 工程。
compile project(':moduleName')
// 引用users-library。users-library作用是,在编译时使用,但是jar不会打包到apk中,由Android或Android上安装的服务提供需要的内容。
// 使用场景:
// 1. 使用Android的framework-classes.jar中的一些隐藏的API。
// 2. Google的服务框架或者其他服务框架。需要在AndroidMainFest.xml中配合uses-library使用。
provided files('libs/xx.jar')
provided 'aaa:bbb:x.x.x'
// 在测试环境下引用依赖。
// 引用jar文件。
androidTestCompile files('libs/xx.jar')
// 引用Maven。
androidTestCompile 'junit:junit:4.11'
// 在baidu productFlavors分支下引用依赖。
// 引用jar文件。
baiduCompile files('libs/xx.jar')
// 引用Maven。
baiduCompile 'aaa:bbb:x.x.x'
// 在release buildTypes分支下引用依赖。
// 引用jar文件。
releaseCompile files('libs/xx.jar')
// 引用Maven。
releaseCompile 'aaa:bbb:x.x.x'
}
1 0
- AndroidStudio中的包管理
- 在AndroidStudio中使用V8包中的RenderScript
- AndroidStudio导出jar包
- AndroidStudio导出jar包
- AndroidStudio导出jar包
- AndroidStudio导出jar包
- AndroidStudio生成aar包
- AndroidStudio导出jar包
- AndroidStudio导出jar包
- androidStudio导包
- AndroidStudio导出Jar包
- AndroidStudio自动导入包
- AndroidStudio导出jar包
- AndroidStudio 打jar包
- AndroidStudio导入兼容包
- AndroidStudio导出jar包
- AndroidStudio导入JAR包
- AndroidStudio导出jar包
- 在内核中之获取HKEY_CURRENT_USER对应路径
- 通过Clipboard传递数据
- how to get rid of the UITabBarItem padding
- openerp学习笔记 数据合法性约束(对象约束+数据库约束)
- jffs2,yaffs2,logfs,ubifs文件系统性能分析
- AndroidStudio中的包管理
- java:快速文件分割及合并
- ubifs文件系统的移植
- HDU 1281 棋盘游戏
- Android中自定义样式与View的构造函数中的第三个参数defStyle的意义
- maven最佳实践:划分模块
- HDU 1018 斯特林公式应用
- CSS专家的网站
- 如何 clone git 项目到一个非空目录