关于Android调用JNI出现的 java.lang.UnsatisfiedLinkError

关于Android调用JNI出现的 java.lang.UnsatisfiedLinkError

java.lang.UnsatisfiedLinkErrorcom.android.tools.fd.runtime.IncrementalClassLoader$DelegateClassLoader......

导致整个问题的原因有很多,这里是找不到SO包。当时使用骁龙820手机调试的,arm64架构的确没有对应的so包,但是我们知道arm64和x86找不到对应的动态链接库的时候,是兼容armeabi-v7中是so包的,除非arm64_v8a包中也有so包,但是不全,可能导致这种问题。但是arm64-v8a中是没有so包的,怀疑是编译打包的时候创建了so包。下一步换了骁龙615的手机调试,发现一切正常。这时候基本上确认问题 了。拿打包好的apk解压,发现果然在编译的时候创建了部分,arm64的so包。然后在gradle中添加abiFilter就好了,只要armeabi就行了,现在市面上绝大多数app为了节省空间,都是只编译armeabi包。

defaultConfig {
        .......
        ndk {
            abiFilters "armeabi-v7a"
        }
    }
展开阅读全文
©️2020 CSDN 皮肤主题: 大白 设计师: CSDN官方博客 返回首页
实付0元
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值