Android Studio下添加引用jar文件和so文件
博客: 安卓之家
微博: 追风917
CSDN: 蒋朋的家
简书: 追风917
博客园: 追风917
安卓开发中我们常会遇到jar文件和so文件的引用,下面介绍下在as下如何添加使用,这里以百度地图sdk所需的文件为例。
添加jar
1 在本地复制jar文件,然后到as界面,project标签下,找到app/libs,ctrl+v粘贴到libs文件夹下,结果如下:

2 添加到依赖库
之前可以右键jar包,“Add As Library”的,这个1.3.2版本给删除了吗?我们可以这样:ctrl+shift+alt+s进入project structure设置界面,然后添加包,操作如下:

在弹出的对话框中,找到libs下的三个jar包,依次添加即可,只能一次添加一个,不知google怎么想的:

添加完成后,项目会自动同步,完成后,会在gradle.build脚本里看到添加了依赖。

添加so
没有so文件或添加路径不对,会出现下面类似错误:
java.lang.UnsatisfiedLinkError: Native method not found:
com.baidu.platform.comjni.map.commonmemcache.JNICommonMemCache.Create:()
添加时有个注意点就是添加的路径要设置正确,Android Studio 默认的so文件路径是app/src/main/jniLibs/armeabi,和eclipse是不一样的,要注意哦。
按照添加jar文件的方法,复制粘贴就可以,没有jniLibs文件夹的新建一个,添加后的结果如下:

好了,这样就ok的,有时还需要添加armeabi-v7a,x86文件夹,视平台酌情增删。
20150930补充:
当然这个so文件的目录是可以指定的,比如在gradle脚本里这样配置:
sourceSets {
main {
jniLibs.srcDirs = ['libs']
}
}
这样配置的话,so文件位置就和jar文件目录一致,也就是和eclipse一样,但是我还是推荐使用as默认的文件目录结构,而我在这里也犯了一个错误,请看我的另一篇文章:安卓百度地图开发so文件引用失败问题研究
enjoy!
悦分享,越快乐_
欢迎交流,转载请注明出处,谢谢!
Android Studio下添加引用jar文件和so文件的更多相关文章
- Android Studio(九):引用jar及so文件
Android Studio相关博客: Android Studio(一):介绍.安装.配置 Android Studio(二):快捷键设置.插件安装 Android Studio(三):设置Andr ...
- Android Studio下添加assets目录
Android Studio下添加assets目录 分类: Android Studio2013-11-06 18:09 10872人阅读 评论(2) 收藏 举报 android studioasse ...
- Android Studio开发入门-引用jar及so文件
作者:王先荣 最近初学安卓开发,因为以前从未用过JAVA,连基本的语法都要从头开始,所以不太顺利.在尝试使用百度语音识别引擎时遇到了如何引用jar及so文件的问题.在GOOGLE加多次尝试之后, ...
- [转]Android Studio开发入门-引用jar及so文件
注意: 1.jar包在app的libs目录 2.so文件放在src/main”目录中名为“jniLibs”的目录 一.引用jar文件 1.将jar文件复制.粘贴到app的libs目录中: ...
- Android Studio下打jar包
在我们使用Eclipse时,我们常常使用的第三方类库文件大多都是jar包形式,用起来很方便.但是jar包只能打包class文件,对于Android UI类库而言,我们常常需要打包资源文件,对于界面不多 ...
- android studio怎么添加.so文件?android studio加载so文件的方法
android studio 中 添加.so 文件,Android Studio中添加.jar文件和.so文件无疑是一件很重要也是很头疼的问题! 1.在src/main中添加 jniLibs文件夹 , ...
- Android Studio下导出jar包和aar包
Android Studio下导出jar包和aar包 jar包和aar包的区别 步骤 1. 创建Android工程 创建工程比较简单,不错复述 2. 创建一个Library(Module) 创建了一个 ...
- Android Studio下通过Gradle配置实现资源文件的模块化
当开发一个app模块个数很多的时候,资源文件就会特别多,布局也会多起来,这时所有的layout都放在同一个目录下,就会显得臃肿,而且不好找相应的布局. 最近看到相关资料,发现在Android Stud ...
- Android studio下gradle Robolectric单元测试配置
android studio下gradle Robolectric单元测试配置 1.Robolectric Robolectric是一个基于junit之上的单元测试框架.它并不依赖于Android提供 ...
随机推荐
- js页面传参数时,参数值包含特殊字符的处理
js页面传参数时,参数值包含特殊字符应该怎么处理,解决方法就是利用js的escape函数,这个函数在解决中文乱码等方面应用的比较广泛.推荐使用. 工作中遇到的小问题,一个页面中通过window.sho ...
- Android中的音频处理------SoundPool,MediaRecorder,MediaPlayer以及RingStone总结
用Soundpool可以播一些短的反应速度要求高的声音, 比如游戏中的爆破声, 而Mediaplayer适合播放长点的. MediaRecorder主要用来录音. SoundPool载入音乐文件使用了 ...
- UVA 11624 Fire!(二次BFS)
先对火BFS一次,求出每个点的最小着火时间. 再对人BFS一次,求出走到边界的最少时间. #include <iostream> #include <queue> #inclu ...
- 【转】 MEF 和 MAF
今天在MSDN上看了一下微软这俩个可扩展框架,微软技术高手真很有才! MEF 和 MAF区别: 早期的 .NET Framework 版本引入了 Managed Add-in Framework (M ...
- Python copy对象(copy与deepcopy)
Python中的对象之间赋值时是按引用传递的,如果需要拷贝对象,需要使用标准库中的copy模块. 1. copy.copy 浅拷贝 只拷贝父对象,不会拷贝对象的内部的子对象. 2. copy.deep ...
- Bzoj 2748: [HAOI2012]音量调节 动态规划
2748: [HAOI2012]音量调节 Time Limit: 3 Sec Memory Limit: 128 MBSubmit: 1234 Solved: 777[Submit][Status ...
- centos6.5建立cloudera-cdh4.6本地源
1.准备: centos6.5系统,root用户 2.安装所需包: sudo yum install yum-utils createrepo 3.下载cdh4.6的repo: ...
- OpenSource
SugarCRM 客户关系管理系统(CRM).SugarCRM开源版是一款完全开放源代码的商业开源软件 OPENFILER 基于浏览器的免费网络存储管理实用程序,可以在单一框架中提供基于文件的网络连接 ...
- 使用hibernate更新数据库记录的信息的相关学习记录
截选代码(可能遗漏标点符号): package name.sql; import java.util.List; import name.session.HibernateSessionFactory ...
- CentOS7.0分布式安装HADOOP 2.6.0笔记-转载的
三台虚拟机,IP地址通过路由器静态DHCP分配 (这样就无需设置host了). 三台机器信息如下 - 1. hadoop-a: 192.168.0.20 #master 2. ha ...