Android Studio 导入第三方库,包括.so类

一般 Android 项目从 Eclipse 导入至 Android Studio(以下简称AS) 后,会出现各种问题,最主要的就是 “gradle” 目前为止还不支持 .so 库文件打包入 apk 。
也就是说,如果你用的第三方库中包含 .so 文件 (一般是 libs\armeabi\ xxx.so ) , 那么只要在代码中出现 “System.loadLibrary( "xxx" ) ; 等代码出现,一定会在这里抛出异常 UnsatisfiedLinkError 。

解决方案如下: 根据我 Google 了2天的结果,一个比较满意且所有出现这个问题的人都可行的方案是:
1) 在硬盘任意位置建立空文件夹 "lib" (注意名字是 "lib" 而不是 "libs" )
2) 把原来的 libs 目录下的 armeabi 文件夹拷贝至 刚建立的 lib 目录下. (armeabi文件夹中的.so文件也会被一并拷入)
3) 将刚建立的 "lib" 目录打包压缩成 .zip 文件, 同时改名为 “armeabi.jar"
4) 将 armeabi.jar 放入原来的 libs 目录下 (和其他第三方jar包放在一起)

经过这4步之后,只需要再重新更新下AS的第三方库,就OK了 .

另一种方法,把jar包拷贝到libs文件夹下,查看Open Module Settings 他们之前是否关连上

直接在Module中的build.gradle文件中设置如下:

dependencies {

compile fileTree(dir: ‘libs‘, include: ‘*.jar‘)

}

如果是工程类的库,则把工程放在和主项目同目录下,在build.gradle设置中如下设置

如: compile project(‘:corpLib‘)


关联远程库

compile ‘com.github.project:2.2‘


郑重声明:本站内容如果来自互联网及其他传播媒体,其版权均属原媒体及文章作者所有。转载目的在于传递更多信息及用于网络分享,并不代表本站赞同其观点和对其真实性负责,也不构成任何其他建议。