Android so文件 报错 32位不能转换成64位

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Android so文件 报错 32位不能转换成64位相关的知识,希望对你有一定的参考价值。

---恢复内容开始---

  第一次被同事叫来简书,我想在哪里记录都一样,那就再试试这个吧。

  公司最新开发自己的产品,需要集成视频录制功能,导入so文件后,运行项目报错,手机上显示“XXX应用已停止”,查看错误log so文件找不到,于是查看项目libs/armeabi-v7a里存在了so文件,想到每个libs目录下有匹配不同系统的文件夹,机智的我,把报错的so文件每个文件夹都复制到各个不同文件夹里,终于不报错了,能找到so文件,可最终就是报了以上标题的错误。

  查看资料后就知道android 5.0版本以上系统都为64位系统,当我们开发者应用中有存在匹配64位的文件夹时,比如:arm64-v8a,mips64,x86_64,应用匹配这些文件夹查找so文件,所以之前市场上有很多app运行失败,解决这个问题有2种办法:

1.找到该第三方引用的64位so文件 替换到项目64位文件夹中

2.让系统没得选择,只能运行32位so文件,删除匹配64位文件夹 get!

 

以上是关于Android so文件 报错 32位不能转换成64位的主要内容,如果未能解决你的问题,请参考以下文章

linux 64位系统ZendGuardLoader.so: wrong ELF class: ELFCLASS32报错

关于android软件中的so文件!

将 32 位 android 应用程序转换为 64 位应用程序

Couldn't load libPassword from loader:NDK开发中C文件编译成cpu的so类库时,找不到类库报错的原因之一

android开发,怎么使用ndk编译成.so文件

解决gdb运行文件报错During startup program exited with code 127.