AndroidStudio中添加依赖的三个选项,如图: 

  分别为:库依赖(Library dependency)、文件依赖(File dependency)和module依赖(Module dependency)

三种依赖

  • Library dependency

  添加一句话就好了,然后会下载相关文件到本地。如:

dependencies {
compile 'com.android.support:appcompat-v7:23.1.1'
}
  • File dependency 
      把jar文件拷贝到项目的libs文件夹下,然后添加File依赖。如果依赖成功,jar文件是可以展开显示的,若不能展开则为依赖失败。如:
compile files('libs/baidumapapi_base_v3_7_3.jar')
  • 1
  • Module dependency 
      就是Local Library,将Library的相关源文件下到本地,通过AS的improt module操作进行导入,然后添加相关依赖。如:
compile project(':library')
  • 1

区别

  • Library dependency是通过访问网址的形式将依赖库进行添加。
  • File dependency是将依赖库的.jar文件已经下载下来了,通过.jar文件的形式添加依赖。
  • Module dependency通常是在项目中为了实现某个功能,又添加一个module,在项目中添加对此module的依赖

引入so文件

  有两种方法:一种是将so文件放在module的libs目录下,另一种是将so文件放在module—>src—>main—>jniLibs目录下(这两种方式都是若有此目录就不新创建,若无此目录就新创建此目录)

  • 方法一

  在libs目录下放入对应不同CPU架构的so文件,通过在build.gradle的android节点下加入代码:jniLibs.srcDirs = [‘libs’] 来说明so的路径为该libs路径。

sourceSets {
main {
jniLibs.srcDirs = ['libs']
}
}
  • 方法二

  在 src—>main 目录下创建文件夹 jniLibs (若有就不创建),将so文件复制到这个目录下即可,工程会自动加载src—>main—>jniLibss目录下的so动态库

引入aar文件

  module引入aar文件,将arr包复制到module的libs目录下,然后在build.gradle的根节点下添加下面的代码:

repositories {
flatDir {
dirs 'libs'
}
}

  然后在dependencies节点下添加:

compile(name: 'arr包的名字', ext: 'aar')

  同步完成后即可发现成功引入jar包,arr文件及so文件

AndroidStudio中添加依赖的三种方式以及如何引入so文件和arr文件的更多相关文章

  1. 浅谈Spring解决循环依赖的三种方式

    引言:循环依赖就是N个类中循环嵌套引用,如果在日常开发中我们用new 对象的方式发生这种循环依赖的话程序会在运行时一直循环调用,直至内存溢出报错.下面说一下Spring是如果解决循环依赖的. 第一种: ...

  2. Spring 循环依赖的三种方式(三级缓存解决Set循环依赖问题)

    本篇文章解决以下问题: [1] . Spring循环依赖指的是什么? [2] . Spring能解决哪种情况的循环依赖?不能解决哪种情况? [3] . Spring能解决的循环依赖原理(三级缓存) 一 ...

  3. mysql 中添加索引的三种方法

    原文:http://www.andyqian.com/2016/04/06/database/mysqleindex/ 在mysql中有多种索引,有普通索引,全文索引,唯一索引,多列索引,小伙伴们可以 ...

  4. Struts中的数据处理的三种方式

    Struts中的数据处理的三种方式: public class DataAction extends ActionSupport{ @Override public String execute() ...

  5. JS中事件绑定的三种方式

    以下是搜集的在JS中事件绑定的三种方式.   1. HTML onclick attribute     <button type="button" id="upl ...

  6. JavaScript 中事件绑定的三种方式

    以下是在 JS 中事件绑定的三种方式.   1. HTML onclick attribute     <button type="button" id="uplo ...

  7. PHP中数据类型转换的三种方式

    PHP中数据类型转换的三种方式 PHP的数据类型转换属于强制转换,允许转换的PHP数据类型有: 1.(int).(integer):转换成整形2.(float).(double).(real):转换成 ...

  8. HTML中使用js的三种方式及优缺点介绍

    1.内部js: 在直接在页面的<script></script>标签内写js代码 优点:相对于使用行内js,内部js代码较为集中,与页面结构的实现代码耦合度较低,比较便于维护 ...

  9. Spring依赖注入三种方式详解

    在讲解Spring依赖注入之前的准备工作: 下载包含Spring的工具jar包的压缩包 解压缩下载下来的Spring压缩包文件 解压缩之后我们会看到libs文件夹下有许多jar包,而我们只需要其中的c ...

随机推荐

  1. PS 图层后面有索引两字怎么办

    ps中图层后面有索引两字的怎么把它拖进别的图中?或怎么把索引去掉? 悬赏分:0 | 解决时间:2010-11-5 08:58 | 提问者:jk500pk 最佳答案 图像--模式 把索引颜色模式改成RG ...

  2. HTML小知识点积累

    1.怎样让heigth:100%起效?   有时候我们设置heigth:100%,想让当前控件铺满整个屏幕,可是非常少情况下这个属性能达到我们想要的效果,这是为什么呢?   而依据W3C的规范.百分比 ...

  3. BubbleGum96 开箱杂谈与软件资源

    前言 原创文章,转载引用务必注明链接. 拿到有一段时间了,一直在想写哪些内容.96boards发布以来,吸引了很多眼球.这里我就慢慢随便聊聊,希望能让大家对96boards有更多了解. 开箱 [开箱图 ...

  4. weexapp 开发流程(三)其他页面创建

    1.首页 (1)轮播图 步骤一:创建 轮播图 组件(Slider.vue) src / assets / components / Slider.vue <!-- 轮播图 组件 --> & ...

  5. 传奇的诞生,PHP三位创始人简介

    PHP到现在为止已经诞生12年了.在这期间它经过不断改善,已经成为Web开发最重要的语言之一.PHP能有今天这样的成就,它的3位创始人(Rasmus Lerdorf.Zeev Suraski和Andi ...

  6. mac系统下为emacs设置中文字体,解决乱码问题

    近期换了个系统,如今用mac系统. 当打开emacs后,中文支持的不是非常好.有的地方能显示.在.el文件的凝视里显示为口口口口口口口口这种框.例如以下图所看到的 找了半天.是由于中文字体的问题.仅仅 ...

  7. oracle 11G direct path read 非常美也非常伤人

    direct path read 在11g中,全表扫描可能使用direct path read方式,绕过buffer cache,这种全表扫描就是物理读了. 在10g中,都是通过gc buffer来读 ...

  8. Linux变量内容的删除、代替与替换

    变量内容的删除与代替 范例一:先让小写的 path 自己定义变量配置的与 PATH 内容同样 [root@www ~]# path=${PATH} [root@www ~]# echo $path / ...

  9. 简明扼要谈Spring IOC的好处

    http://a-kuei.iteye.com/blog/676524 iOC:控制反转,它是不是什么技术,它是一种设计模式.所谓控制反转就是由容器控制程序间的关系,而不是传统实现中,由编程代码直接操 ...

  10. openwrt gstreamer实例学习笔记(一.初始化gstreamer)

    GStreamer 是一个非常强大而且通用的流媒体应用程序框架. GStreamer所具备的很多优点来源于其框架的模块化: GStreamer能够无缝的合并新的插件. 但是, 由于追求模块化和高效率, ...