首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

【错误记录】NDK 报错 java.lang.UnsatisfiedLinkError 的一种处理方案 ( 主应用与依赖 Module 的 CPU 架构配置不匹配导致 )

, 有很多问题都会导致该错误 , 如 build.gradle 中没有配置对应的 CPU 架构 , NDK 中调用的外部动态或静态依赖的 CPU 架构不匹配 ; 这里我遇到的问题是 主应用 与 依赖的...; 下图是主应用生成的 so 动态 : 可以明显看到 主应用的依赖生成了 四种 CPU 架构的动态 , 我们使用的 libopenssl.so 动态只有 armeabi-v7a 架构的 , 当在...架构动态 , 因此只编译生成 armeabi-v7a 架构动态即可 ; 在另一个主应用的 Android Library 中 , 其也使用了 NDK , 并且使用了外部依赖 OpenSSL 静态..., 在 Ubuntu 中只交叉编译了 armeabi-v7a 架构的静态 , 因此不能生成 arm64-v8a 的动态 ; 下图是依赖生成的 so 动态 : 目前的主流手机都是 arm64-...所有的在 NDK 中使用到的依赖 如 OpenSSL , FFMPEG , RTMP , FAAC , OpenCV 等 , 都必须一式两份 , 一份 armeabi-v7a 架构的静态/动态 依赖

80200
您找到你想要的搜索结果了吗?
是的
没有找到

关于so文件你需要知道的知识「建议收藏」

但事实上,即使你在项目中只是使用Java语言,很多情况下,你可能并没有意识到项目中依赖的函数或者引擎库里面已经嵌入了.so文件,并依赖于不同的ABI。...因为只要出现了这个目录,系统就只会在这个目录里找.so文件而不会遍历其他的目录,所以就出现了找不到.so文件的情况。...6. java.lang.UnsatisfiedLinkError 该错误类型较多,以下进行分类: java.lang.UnsatisfiedLinkError : dlopen failed: library...//dlopen打开失败 java.lang.UnsatisfiedLinkError :findLibrary returned null //找不到library java.lang.UnsatisfiedLinkError...: Native method not found //找不到对应函数 java.lang.UnsatisfiedLinkError :Cannot load library: load_library

2.1K10

Android 4.x加载so失败问题原因分析

1 so 加载过程 so 加载的过程可以参考小米的系统工程师的文章loadLibrary动态加载过程分析[1] 2 问题分析 2.1 问题 年前项目里新加了一个 so,但发现native 方法的找不到的...crash 好多,好些都是报了java.lang.unsatisfiedlinkerror native method not found,而且基本上是出现在4.x的系统里,特别是 4.4,4.2的系统...在网络上搜索相关的可能导致到这个问题的原因: •so 文件没有在对应架构的目录里找到;•方法名有错误; 2.2 分析1 我们最开始是怀疑应用在安装时没有正确解压出对应的so文件到相应目录,因此加了相应统计来看发生crash的手机是否是因为找不到对应的...3 总结 Android 4.X 系统加载 so 后,出现 java.lang.unsatisfiedlinkerror native method not found的crash的原因除了网上所说的...可以通过重新从应用安装目录解压出对应的 so 文件并重新加载来解决大部分;这两种方法不能保证可以100%解决问题,但可以减少大部分问题(90%); References [1] loadLibrary动态加载过程分析

92740

动态加载so的实现方法与问题处理

destFile.getAbsolutePath()); //下面调用jni方法,举例如下: //String desc = JniCpuActivity.cpuFromJNI(1, 0.5f,...虽然App工程里面对so文件做了动态加载处理,但运行时加载so仍然报错“java.lang.UnsatisfiedLinkError: dalvik.system.PathClassLoader ***...因为App无法把so文件复制到系统目录,所以导致System.loadLibrary方法找不到libEasyAR.so。...关于系统目录找不到so的问题,解决办法找到了以下两个: 1、把App动态加载so的目录加入到系统目录列表nativeLibraryDirectories, private static void...正所谓一波三折,麻烦事还没结束,换台运行Android7.0的真机,动态加载so时再次出现闪退,真叫人欲哭无泪(出错日志为Java.lang.UnsatisfiedLinkError: dlopen failed

3.4K20

Android Studio编译Liteav SDK报错解决方法

cloud.tencent.com/document/product/454/7877 常见的报错 开发者在Android端集成LiteAVSDK到自己的项目时,编译过程中有三种常见错误,如下: 错误一:使用sdk类方法时,报类找不到错误...,报错Cannot resolve symbol 'TXLiveBase',如下图所示 解决方法 1、jar集成 检查jar包和so是否放在 /src/main/jniLibs,与jni...(x.x.xxxx替换成对应的SDK版本) compile(name: 'LiteAVSDK_Professional_x.x.xxxx', ext: 'aar') 3、编译报找不到对应aar...文件,如下图错误 此时检查导入的aar报名是否跟加载的aar名称一致 错误二:aar集成,代码不报错,编译运行至手机报TXCLog类错误,报错信息java.lang.UnsatisfiedLinkError...错误三:项目中集成了互动直播后,再集成移动直播时报share.so冲突,错误信息More than one file was found with OS independent path 'lib/armeabi-v7a

7.5K158

打通“任督二脉”:Android 应用安装优化实战

(2)安装后:这个阶段,无论是内置应用还是第三方应用,或多或少的会遇到一些问题,如so文件找不到,图片存储、缓存数据等出现异常等... [205b24fa38f84a7f89d60efe7d7e306a...安装中 3.1 APK的结构 APK文件其实是zip格式,一般包含一个或多个dex文件、resources.arsc、AndroidManifest.xml、res目录、META-INF目录及包含so的...4.2 libmmkv.so无法找到问题解决 4.2.1 现象 如果你的应用接了腾讯的mmkv,你可能遇到了这样的问题: java.lang.UnsatisfiedLinkError dalvik.system.PathClassLoader...4.2.2 分析原因 出现问题的原因是什么:根据日志可以确认,是找不到应用data/app/文件夹下面的libmmkv.so文件。...实践证明该方案完全可行,有效解决了so找不到的问题。

58530

Spring的@Autowired依赖注入原来这么多坑!

根据ID移除学生 DataService是个接口,其实现依赖Oracle: 现在期望把部分非核心业务从Oracle迁移到Cassandra,自然会先添加上一个新的DataService实现: @Repository..."); } } 当完成支持多个数据的准备工作时,程序就已经无法启动了,报错如下: 解析 当一个Bean被构建时的核心步骤: 执行AbstractAutowireCapableBeanFactory...装配过程: 寻找所有需依赖注入的字段和方法:AutowiredAnnotationBeanPostProcessor#postProcessProperties 根据依赖信息寻找依赖并完成注入。...仍报错“找不到Bean”,why? 答疑 现在问题是“如何引用内部类的Bean”。...studentController.InnerClassDataService") DataService innerClassDataService; 总结 像第一个案例,同种类型的实现,可能不是同时出现在自己的项目代码中,而是有部分实现出现在依赖的类

49741

开源项目 | Java开发身份证号码识别系统

该项目修改原有的需要安装opencv的过程,全部使用javaccp技术重构,通过javaccp引入需要的c++进行开发。 不需要安装opencv,新增前端控制识别区域的功能、新增后端识别后验证。...的识别,配合样式中的区域在后台裁剪相关区域图片 /idCardCv/src/main/resources/static/js/plugins/cropper/cropper.css 2 遇到问题 java.lang.UnsatisfiedLinkError...3 身份证号码识别 请求地址 http://localhost:8080/idCard/index 它基于openCV这个开源。这意味着你可以获取全部源代码,并且移植到opencv支持的所有平台。...将opencv3.4.3升级到4.3 项目地址:https://gitee.com/endlesshh/idCardCv PS:防止找不到本篇文章,可以收藏点赞,方便翻阅查找哦。

1.4K10

大数据与云计算技术周报(第140期)

本期会给大家奉献上精彩的:Elasticsearch、Kafka、cassandra、MongoDB、spark、Hbase、OLAP。全是干货,希望大家喜欢!!!...https://mp.weixin.qq.com/s/p9w0mA4XgPCF2_ytrdea5g 3cassandra 详解cassandra数据 https://mp.weixin.qq.com...https://mp.weixin.qq.com/s/9OGd5OnVGFUymCC-f-DR-Q 10Pandas Pandas 是基于 NumPy 的一种数据处理工具,该工具为了解决数据分析任务而创建...Pandas 纳入了大量和一些标准的数据模型,提供了高效地操作大型数据集所需的函数和方法。这些练习着重DataFrame和Series对象的基本操作,包括数据的索引、分组、统计和清洗。...https://mp.weixin.qq.com/s/39yPBJ7DWSMs_aIxtlpXCw 11开心一刻 世界上最遥远的距离不是生与死,而是你亲手制造的BUG就在你眼前,你却怎么都找不到她。

54510

【错误记录】360 加固后的运行错误 ( 加固 SO 动态时不能对第三方动态进行加固 )

文章目录 一、加固 SO 动态报错 二、解决方案 一、加固 SO 动态报错 ---- 在 【Android 安全】使用 360 加固宝加固应用 ( 购买高级加固服务 | 设置资源加固 | 设置 SO...文件保护配置 | 设置 SO 防盗用文件配置 | 反编译验证加固效果 ) 加固时 , 遇到的问题 ; 使用 360 加固保 加固 SO 动态后 , 一旦调用该 SO 所在的类 , 就会报如下错误...java.lang.UnsatisfiedLinkError: JNI_ERR returned from JNI_OnLoad in "/data/app/xxx-AwEPOi3u8iBcwz7sxpy0zw...2578-2594/xxx E/AndroidRuntime: FATAL EXCEPTION: Binder:2578_3 Process: xxx:xxx, PID: 2578 java.lang.UnsatisfiedLinkError...10:03.090 2578-2594/xxx E/DEBUG: Back traces starts. 2021-04-27 14:10:03.091 2578-2594/xxx E/DEBUG: java.lang.UnsatisfiedLinkError

81930

JavaSE学习总结(八)—— 异常处理(Exception)

//文件已结束异常 EOFException //文件未找到异常 FileNotFoundException //字符串转换为数字异常 NumberFormatException //操作数据异常...,当应用试图调用抽象方法时抛出 java.lang.AbstractMethodError //断言错误,用来指示一个断言失败的情况 java.lang.AssertionError //类循环依赖错误...,若检测到类之间循环依赖则抛出该异常 java.lang.ClassCircularityError //类格式错误 java.lang.ClassFormatError //错误基类,标识严重程序运行问题...java.lang.InstantiationError //内部错误 java.lang.InternalError //链接错误 java.lang.LinkageError //未找到类定义错误,找不到该类的定义时抛出该错误...java.lang.StackOverflowError //线程已结束 java.lang.ThreadDeath //未知错误 java.lang.UnknownError //未满足的链接错误 java.lang.UnsatisfiedLinkError

1.3K90
领券