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. OnlineJudge测试数据生成模板

    int类型数据生成一(正数最多4位): #include <bits/stdc++.h> using namespace std; int main() { freopen("t ...

  2. [cocos2d-x]怎样降低cocos2d-x游戏的耗电量?

    Cocos2d-x游戏的耗电量一直是个让人头疼的问题,一个简单的三消游戏,玩一会手机就热得发烫,更郁闷的是电池消耗非常快.基本上两个小时就能够把电池耗光. 近期又看到一个帖子.有个老外用cocos2d ...

  3. 通达OA 一些工作流调整后带来的后果及应对措施

    近期单位有个工作流须要改动,原因是最早设计时控件的字段设计不规范,控件直接使用了人员的名字来命名了.这不使用手机訪问时就出问题了,名字会直接显示出来,如今就须要进行调整. 调整初步有两个方案: 一是全 ...

  4. androidproject有红色叹号的解决方式

    首先,查看SDK版本号,一般有两处.第一处是project.properties文件里的target=android-?改动成自己工程相应的SDK版本号.第二处是manifest文件里, androi ...

  5. CycleViewPager

    https://github.com/zhaozhentao/CycleViewPager

  6. Shell hook

    [目的]实现 ll -as   +hook+     clear Shell脚本及钩子 - CSDN博客 https://blog.csdn.net/shengzhu1/article/details ...

  7. cat /proc/cpuinfo | awk -F: '/name/{print $2}' | uniq -c

    cat /proc/cpuinfo | awk -F: '/name/{print $2}' | uniq -c

  8. Maven group, artifact or version defined in the pom file do not match the file ...

    在把library上传到bintray空间的时候报以下错误 Could not upload to 'https://api.bintray.com/content/ping/maven/comm-a ...

  9. poj 3017 Cut the Sequence(单调队列优化DP)

    Cut the Sequence \(solution:\) 这道题出的真的很好,奈何数据水啊! 这道题当时看得一脸懵逼,说二分也不像二分,说贪心也不像贪心,说搜索吧这题数据范围怎么这么大?而且这题看 ...

  10. css 中的伪类选择器before 与after

    .cf:after,.cf:before {content: " "; display: table;} .cf:after {clear: both;} :before是因为ta ...