最近碰见了这种错误,于是记录下来
java.lang.UnsatisfiedLinkError: dlopenfailed: “**/*/arm/*.so" has unexpected e_machine: 3
出错原因:在A架构下放入了B架构的同名so文件导致出错
libs\armeabi\libUtils.so 放入了x86编译的libUtils.so(同名很容易出错)
然后在Android ARM设备上运行,Crash!
运行结果:
java.lang.UnsatisfiedLinkError: dlopen failed: "/data/app/com.example.demo-2/lib/arm/libUtils.so" has unexpected e_machine: 3
运行时,系统检查ELF文件中的e_machine字段的值,跟arm的不匹配,就会抛出这个异常!
网友评论