Android Studio依赖库导入
来源:互联网 发布:淘宝提前收款在哪里 编辑:程序博客网 时间:2024/06/06 20:52
在我们的项目中,或我或少都会用到一起第三方的库,那么对它的管理也就成为了项目中的一部分。这里就介绍下在Android Studio中如何去管理项目中的库和它们的依赖。
如何添加一个库
Android Studio中添加一个库有三种方法
第一种,直接拷贝到libs目录下
如图先把ja包拷贝到module中的libs目录下,然后点击如下图中所示按钮(Sync Project with Gradle Files)。完成,很简单的,这是常用的做法。
第二种, 在Project Structure中添加
打开Project Structure(File->Project Structure… 或者 ctrl+alt+shift+S),选择要添加的module, 选择Dependencies。
点击右边绿色的“+”号。
- 选择File dependency, 可以选择添加该Project下面的库文件。选择Module dependency, 可以选择Project下的依赖Module.
- 点击确定就可以添加。
打开Module下的build.gradle文件,我们可以看到,这里新增加了我们添加的库,当然你也可以直接修改这个文件。
dependencies { compile fileTree(dir: 'libs', include: ['*.jar']) testCompile 'junit:junit:4.12' compile 'com.android.support:appcompat-v7:23.1.1' compile 'com.android.support:design:23.1.1' compile files('libs/universal-image-loader-1.9.4.jar') compile project(':app2')}
- 1
- 2
- 3
- 4
- 5
- 6
- 7
- 8
- 1
- 2
- 3
- 4
- 5
- 6
- 7
- 8
另外说一句,module库中build.gradle的申明为com.android.library
apply plugin: 'com.android.library'
- 1
- 1
第三种, 使用”Library dependency“方式添加
相信有人注意到了,在Project Structure中点击绿色的“+”号,会出现三种选择,在前面我介绍了其中两种,但我把“Library dependency”这个选择规入了第三种添加方式。原因是这里我们并不会直接去操作jar包,而是把它交给了Gradle去管理。我们先来看下怎么去添加,这里我以Google的gson为例:
1. 打开在Project Structure->Module->Dependencies->”+”->Library dependency。输入你要添加的jar包名字,可输入关键字,点击搜索。
2. Gradle会去搜索合适的库,选择你想到的库,点击确定。
3. 点击确定。
来看下Module的build.gradle文件, 可以看到,这里的gson并没有看到libs\之类的路径,你在libs或者module中也找不到对应的jar文件。
dependencies { compile fileTree(dir: 'libs', include: ['*.jar']) testCompile 'junit:junit:4.12' compile 'com.android.support:appcompat-v7:23.1.1' compile 'com.android.support:design:23.1.1' compile files('libs/universal-image-loader-1.9.4.jar') compile project(':app2') compile 'com.google.code.gson:gson:2.5'}
- 1
- 2
- 3
- 4
- 5
- 6
- 7
- 8
- 9
- 1
- 2
- 3
- 4
- 5
- 6
- 7
- 8
- 9
那么这个jar包在哪里呢?注意项目下面的External Libraries,展开它,原来它跑到这里来了。选中gson,点击右键,选择Library Properties…,可以看到,原来它的jar包下载到了这里。我们还可以对它进行管理,附加javadoc或者soure等等。
这不是很方便呢,如果第三方库有更新的版本了,也可以方便的去替换。那么还有个问题,这些jar包是从哪里去下载的呢?
还记得下Project中的build.gradle中的这句话吗,Android Studio就是从build.gradle里面定义的Maven仓库服务器上下载library的。jcenter 就是一个标准的Android library文件服务器,所有通过gradle导入的jar包都是从http://bintray.com/bintray/jcenter这个仓库上扒下来的。如果你需要的jar包在这个网站上没有,那就无法通过gradle的方式来导入。
allprojects { repositories { jcenter() }}
- 1
- 2
- 3
- 4
- 5
- 1
- 2
- 3
- 4
- 5
除此之外,我们还可以分享自己的Library到jcenter上,还可以自己定义特有的Maven仓库服务器,这里就没有去研究了。
好了,添加库到这里就说完了,至于如何删除一个库就很简单了,你可以在Project Structure中去删除,也可以在build.gradle中去删除。这里就不用多说了。
另外还可以修改依赖的顺序,同样的都可以在Project Structure或者build.gradle中做修改,也没有啥子多说的。
依赖范围
在Project Structure->Dependencies中,每一个库后面都有一个Scrope选项,这有什么用呢。
Dependency scope 是用来限制Dependency的作用范围的, 影响项目在各个生命周期时导入的库的状态。
compile:默认选项,是对所有的build type以及favlors都会参与编译并且打包到最终的apk文件中。
provided:是对所有的build type以及favlors只在编译时使用,类似eclipse中的external-libs,只参与编译,不打包到最终apk。
APK:只会打包到apk文件中,而不参与编译,所以不能再代码中直接调用jar中的类或方法,否则在编译时会报错。
Test compile:针对单元测试代码的编译编译以及最终打包测试apk时有效,而对正常的debug或者release apk包不起作用。
Debug compile:针对debug模式的编译和最终的debug apk打包
Release compile:针对Release 模式的编译和最终的Release apk打包。
- Android Studio 导入依赖库
- Android Studio依赖库导入
- Android Studio 导入第三方依赖库
- Android studio导入依赖项目
- Android studio 导入依赖工程
- Android Studio工程导入,导入依赖包
- Android Studio中导入依赖库的方法
- Android Studio导入Github上的项目、依赖库
- android studio导入第三方依赖库遇到的问题
- android studio 导入项目作为主工程依赖库
- Android Studio中导入依赖库的方法
- Android studio 导入module 依赖第三方库
- Android Studio中导入依赖库的方法
- Android Studio 项目的导入以及依赖
- Android studio导入依赖包的方法
- android studio导入module依赖工程
- Android Studio中导入Module建立依赖
- Android Studio导入其他项目依赖
- (5)FPQuant JHipster_国际化
- Android中的DrawRect()参数解析
- HTML5知识填坑(二)——地理定位
- iOS Touch ID 身份认证
- Power-BI For K3 课程系列--基于财务总账分析(上)
- Android Studio依赖库导入
- Maven 手动添加 JAR 包到本地仓库
- socket第三方库 AsyncSocket(源码注释解读.转)
- 剑指Offer-二进制中1的个数
- CentOS 6.5 安装 GCC6.1
- 如何优化高流量站点的nginx和php-fpm的几个方面
- Java中,两个浮点型比较是否相等
- iOS之使用CoreImage进行人脸识别
- 【TensorFlow】学习率、迭代次数和初始化方式对准确率的影响