Android 集成AndFix报java.lang.UnsatisfiedLinkError
来源:互联网 发布:wordpress cms模板 编辑:程序博客网 时间:2024/05/14 03:30
在集成AndFix时,报java.lang.UnsatisfiedLinkError错误,经研究发现,AndFix gradle依赖里面只包含armeabi与x86架构so文件,如果我们的项目里包含除了这个两个架构以外的架构,会导致AndFix抛异常。
出错原因:安卓手机默认查找到该cpu下合适的库时,不会继续查找对应的兼容库。
比如:项目里包含arm64-v8a,64位机器默认去查找arm64-v8a目录下是否有合适的64位库,而不会去查找其他目录下的库
解决方式:
第一种,项目里只包含armeabi与x86架构
第二种,在其他架构文件里面加入对应的AndFix so文件,可以前往github下载
在第一个项目按照上面的方法解决了,在集成另一个项目时按照上面的方法集成,发现还是一直抛java.lang.UnsatisfiedLinkError异常,无法读取so库。经过一段时间研究发现,该项目集成了Facebook的fresco图片库,该库里面配置了abi:
splits {
abi {
enable true
reset()
include 'x86', ‘x86_64’,’arm64-v8a', 'armeabi-v7a', 'armeabi'
universalApk false
}
}
fresco的draw-pipeline考虑了多种cpu架构的机器,配置了如上架构,所以arm64-v8a的手机就读取arm64-v8a目录下的so库,而不回去读取其他库,导致读取不到其他目录下的so库。
解决方案:
第一种:注释掉draw-pipeline的的abi配置
第二种:配置idk abiFilters(推荐,可以处理其他库导致该问题)
android {
defaultConfig {
ndk {
// 设置支持的 SO 库构架,注意这里要根据你的实际情况来设置 abiFilters 'armeabi'// 'armeabi-v7a', 'arm64-v8a', 'x86', 'x86_64', 'mips', 'mips64'
}
}
}
如果在添加 “abiFilter” 之后 Android Studio 出现以下提示:
NDK integration is deprecated in the current plugin. Consider trying the new experimental plugin
在项目根目录的 gradle.properties 文件中添加:
android.useDeprecatedNdk=true
- Android 集成AndFix报java.lang.UnsatisfiedLinkError
- Android报错android java.lang.UnsatisfiedLinkError:
- Android Studio集成极光推送(Jpush) 报错 java.lang.UnsatisfiedLinkError: cn.jpush.android.service.PushProtocol
- Android Studio集成极光推送(Jpush) 报错 java.lang.UnsatisfiedLinkError: cn.jpush.android.service.PushProtoco
- Android Studio集成极光推送(Jpush) 报错 java.lang.UnsatisfiedLinkError: cn.jpush.android.service.PushProtocol
- Android Studio集成极光推送(Jpush) 报错 java.lang.UnsatisfiedLinkError: cn.jpush.android.service.PushProtocol
- Android java.lang.UnsatisfiedLinkError
- Java.lang.UnsatisfiedLinkError android studio集成Jpush极光推送
- Android Studio 加载.so文件报错java.lang.UnsatisfiedLinkError
- Android加入热修复报java.lang.UnsatisfiedLinkError: 解决方法
- android java.lang.UnsatisfiedLinkError: 异常
- java.lang.unsatisfiedlinkerror(Android)
- android studio java.lang.UnsatisfiedLinkError
- Java.lang.UnsatisfiedLinkError android studio
- Android java.lang.UnsatisfiedLinkError错误
- Android Studio java.lang.UnsatisfiedLinkError
- java.lang.UnsatisfiedLinkError(tomcat启动报错)
- Android集成环信3.x出现java.lang.UnsatisfiedLinkError: com.android.tools.fd.runtime.IncrementalClassLoader
- php在指定的时间(多少秒以后)删除文件夹下所有子文件
- flash 反编译资料
- 卫** 打包上传360 问题
- Android Studio导入jar包
- JPush极光推送 Java调用服务器端API开发
- Android 集成AndFix报java.lang.UnsatisfiedLinkError
- iOS组件化学习
- iOS绘制虚线方法
- Xposed hook-小试牛刀
- cshtml 界面的传值(传到不同的界面)
- Practice Round APAC test 2017--Problem B. Robot Rock Band
- 微信公众号开发中遇到的问题——模板信息,自定义回复,一次请求多次相应(四)
- httpClient获取xml乱码
- if __name__ == '__main__' 解释