Android Studio(九):引用jar及so文件
Android Studio相关博客:
Android
Studio(二):快捷键设置、插件安装
今天有人问我,Android studio的项目,明明把第三方的jar文件拷贝到了module的libs文件夹下,为何还是无法再代码中调用jar包中的API?
我说,你需要手动编译你的jar包,编译后会在gradle配置文件中看到相应jar包的引用。
那如何编译呢?
通常来说,有两种方法,但其实质是一样的。
引用jar包:
方法1:
· 将jar文件复制、粘贴到app的libs目录中
· 右键点击jar文件,并点击弹出菜单中的“Add As Library”,将jar文件作为类库添加到项目中;
· 选择指定的类库。
注:如果不执行2、3步,jar文件将不起作用,并且不能使用import语句引用。
方法2:
· 将jar文件复制、粘贴到app的libs目录中
· 确认你的build.gradle文件的内容是否有,没有就加上,它的意思是编译所有libs文件加下的jar包
dependencies {
compile fileTree(dir: 'libs', include: ['*.jar'])
}
· 点击控制面板上的小图片Sync Project with Gradle Files
学会了如何在Android studio项目中如何引用jar包后,那如何引用so文件呢?它可不像Eclipse那样直接把so文件夹拷贝到libs文件夹下就好了。总之,要引入so文件,你得注意下如何去配置:
引入so文件:
引入so文件也有两种方法,具体使用哪一种,看开发者自己如何选择了。
方法一:
· 在“src/main”目录中新建名为“jniLibs”的目录;
· 将so文件复制、粘贴到“jniLibs”目录内。
注:如果没有引用so文件,可能会在程序执行的时候加载类库失败,有类似如下的DEBUG提示:
java.lang.UnsatisfiedLinkError: Couldn't load library xxxx from loader dalvik.system.PathClassLoader
有些看过我之前写的Android Studio(七):项目从Eclipse到Android Studio迁移 的人可能会郁闷了,要知道导出的项目,可是没有main目录的啊,那该如何是好呢?那不妨看看第二种引入so文件的方法吧。
方法二:
· 把so文件拷贝到libs文件夹下
· 在build.gradle文件中配置
好啦,就是这么简单的几步,就可以轻松的把so文件引入到你的工程中了。
Android Studio(九):引用jar及so文件的更多相关文章
- Android studio 中引用jar的其实是Maven?(二)
上一篇:Android studio 中引用jar的其实是Maven?(一) 搭建maven仓库: 去了解一个新的事物的时候,最好的方式就是去使用它.例如去了解一座城市的时候,最好的方式就是乘坐公共交 ...
- Android studio 中引用jar的其实是Maven?(一)
由于Studio比eclipse多了一步对工程构建的步骤,即为build.gradle这个文件运行,因此其引入第三方开发jar包与lib工程对比Eclipse已完成不同,引入第三方jar与lib工程显 ...
- Android Studio如何引用jar包裹(不gradle)
这和eclipse最大的区别.与非常人的预期开始Android Studio我们很不高兴这一套. 它直接在地图上.首先通过File->Projcet structure打开project结构界面 ...
- Android Studio开发入门-引用jar及so文件
作者:王先荣 最近初学安卓开发,因为以前从未用过JAVA,连基本的语法都要从头开始,所以不太顺利.在尝试使用百度语音识别引擎时遇到了如何引用jar及so文件的问题.在GOOGLE加多次尝试之后, ...
- (转载) android studio library生成jar包和aar的方法总结
android studio library生成jar包和aar的方法总结 标签: android学习文档jar和aar的使用与生成gradle 2016-11-25 10:39 1782人阅读 评论 ...
- Android Studio导入第三方jar包或依赖工程的方法
Android Studio导入第三方jar包或依赖工程的方法 一 导入jar包的方法 1.打开自己的工程,将需要导入的jar包copy到libs文件夹下 2.在导入的jar包处单击菜单 Add ...
- Android Studio 导入系统 jar包
1.当前需要导入系统jar包的module所对应build.gradle中添加如下依赖: provided files('libs/classes-full-debug.jar') 也可以图形化设置: ...
- 安装Android studio出现'tools.jar' seems to be not in Android Studio classpath......的解决方法
安装Android studio出现'tools.jar' seems to be not in Android Studio classpath......的解决方法 原创 2015年07月31日 ...
- Android studio中找不到so文件的问题:java.lang.UnsatisfiedLinkError
解决Android studio中找不到so文件的问题:java.lang.UnsatisfiedLinkError 表示我们不编译jni代码,直接从libs里面复制so库 文件路径:app\buil ...
随机推荐
- mvp例子与MVVM例子
VMP例子 <!-- 从百度CDN上面找个jquery的链接 --> <!DOCTYPE html> <html lang="en"> < ...
- php分页查询的简单实现代码
<body><h1>分页查询</h1><?phpinclude("DADB.class.php");$db=new DADB();$tj= ...
- spring和mybatis整合遇到org.springframework.beans.factory.BeanDefinitionStoreException
今天对spring和mybatis整合进行练习,通过MapperScannerConfigurer进行mapper扫描 但是在进行单元测试的时候,死活就是报错,具体报错如下: org.springfr ...
- 如何制作可以在 MaxCompute 上使用的 crcmod
之前我们介绍过在 PyODPS DataFrame 中使用三方包.对于二进制包而言,MaxCompute 要求使用包名包含 cp27-cp27m 的 Wheel 包.但对于部分长时间未更新的包,例如 ...
- 灵动微本土MCU厂商具有吸引力的增长点
作为各种电子产品的控制和处理核心,微控制单元(MCU)器件是一种集成微处理器(CPU).存储器(RAM/ROM).计数器,以及I/O端口的芯片.从MCU内核架构来看,单片机有历经多年的8051,基于A ...
- Android 程序员不得不收藏的个人博客(持续更新...)
本文已收录我的 Github ,持续更新中 ,欢迎点赞 ! 每周打开一次收藏夹里的个人博客,已经成为了我的人生一大乐趣. 相比各大博客平台,我一直更加偏爱个人博客.在每个人自己的这一亩三分地里,你能看 ...
- 模拟退火解TSP问题MATLAB代码
分别把前四个函数存成m文件,再运行最后一个. swap.m function [ newpath , position ] = swap( oldpath , number ) % 对 oldpath ...
- BZOJ 1925地精部落题解
题目链接 一道神仙题,有很多思考的方式,这里选择最好理解的一种来讲 我们将序列分为两种,一种开头递增,一种开头递减,显然这两种序列的数目是一样的 现在我们只用考虑开头递增的情况 f[i][j]表示前i ...
- 【JZOJ4803】【NOIP2016提高A组模拟9.28】求导
题目描述 输入 输出 样例输入 2x^2+3x+1 样例输出 4x+3 数据范围 样例解释 求导的意思: 多项式是由若干个单项式构成的 单项式的一般形式是ax^b,其中ab都是常数,x是自变量 对于单 ...
- Directx11教程(31) 纹理映射(1)
原文:Directx11教程(31) 纹理映射(1) 在前面的例子中,我们要么是直接给顶点赋颜色值,要么是在顶点属性中设置Diffuse和Specular系数,从而根据光照参数计算得到 ...