使用Android Studio时so文件打包不到APK中

1,需要在build中添加如下配置,这是必备的

Android {
   sourceSets {
       main {
           jniLibs.srcDirs = ['libs']
       }
   }
}

2,如果添加了该项配置出现了问题可能原因是引用了第三方包引起

比如我这边引用了xutils这个包,因为该包中也有一个.so的文件libwebpbackport.so,所以该包中配置了打包的命令导致上述(第一条1原因)配置失效,不过经过测试,也有打包成功的时候,不过大多数时候都是失败的,具体原因还有待研究。

compile 'org.xutils:xutils:3.3.36'

最后把该包去掉,自己的.so文件就被打包到APK中了,具体查看如下:

root@android:/data/data/com.wizarpos.company # ls
cache
files
lib
shared_prefs
root@android:/data/data/com.wizarpos.company # cd lib/
root@android:/data/data/com.wizarpos.company/lib # ls
libwebpbackport.so
root@android:/data/data/com.wizarpos.person/lib # ls
libjni_cloudpos_rfcard.so
libjni_wizarpos_hsm.so
root@android:/data/data/com.wizarpos.person/lib #

3,如何解决该问题

要解决这个问题可以不是用gradle引用,改为jar包引用,步骤如下

首先找到该包的地址如:http://dl.bintray.com/wyouflf/maven/org/xutils/xutils/3.3.36/

下载对应的xutils-3.3.36.aar,之后解压该文件,提取其中的.so和class.jar文件,其中.so在jni文件夹中

class.jar在根目录中,修改一下class.jar的名字xutils3.3.36.jar,这样方便查看版本。

 转自:http://blog.csdn.net/fhl13017599952/article/details/52120739

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值