android 7.1 的jni加载错误: java.lang.UnsatisfiedLinkError: dlopen failed: library

本文介绍在Android 7.0及以上版本中,使用JNI时遇到的加载失败及闪退问题,并提供了一个有效的解决方案。问题源于尝试加载自定义的libtestJniNative.so库时出现错误。解决方法是在system/etc/public.libraries.txt文件中添加对应的so库全名。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

自己编写了简单的apk后,通过 System.loadLibrary("testJniNative"); 调用自己写的libtestJniNative.so加载不成功,只要引用第三方的jni库,这个问题应该都会出现(Android7.0以上的版本),并且会造成闪退崩溃问题。网上的方法很多并没有戳中要点,给出的的并不是解决办法,在 http://blog.csdn.net/ngyzqf/article/details/78991929  博客中给出了我的问题解决办法,再次重新给大家分享出来,防止大家入Android的坑太久,再次感谢那篇博客。 

出错java.lang.UnsatisfiedLinkError: dlopen failed: "/data/app/com.sunrus.nfcprb2c-1/lib/arm/libprotectClass.so" has invalid shdr offset/size: 125032/4080

解决办法:在system/etc/public.libraries.txt中添加该so的全名 ,即我的libprotectClass.so

评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值