JNI_OnLoad returned bad version (-1) 问题解决 proguard

在Android开发中遇到JNI_OnLoad返回错误版本(-1)的问题,日志显示在libengfetch_jni.so中。分析发现可能由Proguard的代码优化引起,通过在编译时保留特定方法(-keep)解决了问题。具体解决方案是在Android.mk中添加LOCAL_PROGUARD_FLAG_FILES,并创建proguard.flags文件,保持com.huaqin.runtime.engtools.engfetch类的所有静态方法。
摘要由CSDN通过智能技术生成

添加jni时出现如下问题

log 如下

01-07 17:34:51.406 W/dalvikvm( 2032): JNI_OnLoad returned bad version (-1) in /system/lib/libengfetch_jni.so 0x423fcc30

01-07 17:34:51.406 D/wll     ( 2032): load libtesterstatus_jni error!
01-07 17:34:51.406 W/dalvikvm( 2032): No implementation found for native Lcom/huaqin/runtime/engtools/engfetch;.engf_writephasecheck:(II)V
01-07 17:34:51.406 D/AndroidRuntime( 2032): Shutting down VM
01-07 17:34:51.406 W/dalvikvm( 2032): threadid=1: thread exiting with uncaught exception (group=0x41cdc378)
01-07 17:34:51.406 I/        ( 2032): JNI_OnLoad
01-07 17:34:51.406 E/        ( 2032): RegisterNatives failed for 'com/huaqin/runtime/engtools/engfetch'
01-07 17:34:51.406 E/        ( 2032): ERROR: registerNatives failed
01-07 17:34:51.406 E/AndroidRuntime( 2032): FATAL EXCEPTION: main
01-07 17:34:51.406 E/AndroidRuntime( 2032): java.lang.UnsatisfiedLinkError: Native me
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值