Android:Device supports x86, but APK only supports armeabi, armeabi-v7a,arm64-v8a on device

一、前言:

在我运行app的时候出现如下错误

二、解决方案:

我也在网上查了很多,经过自己的尝试验证过的结论分享给大家。

报错信息大概意思是:即设备支持x86,但APK仅支持armeabi, armeabi-v7a,arm64-v8a
defaultConfig {
    ndk {
        //选择要添加的对应cpu类型的.so库。
        abiFilters 'armeabi', 'armeabi-v7a', 'arm64-v8a',"x86"
        // 还可以添加 'x86', 'x86_64', 'mips', 'mips64'
    }

}

原因
模拟机的设备是 x86,但是运行的这个程序的 apk 却只支持 armeabi-v7a,armeabi 和 x86_64 三种。

这个问题不仅仅是一个问题,它是很多个问题
是的,那么问题来了
x86,armeabi-v7a,armeabi,x86_64 到底是什么玩意?
我们的代码是在哪里设置apk对它们支持的?
怎么查看和设置模拟机的支持类型?
1.x86,armeabi-v7a,armeabi,x86_64 到底是什么玩意?

这四个玩意都是 CPU 架构类型的名称。
目前 android 支持的 CPU 架构有有以下几种:

CPU架构 描述
armeabi 第5代 ARM v5TE,使用软件浮点运算,兼容所有ARM设备,通用性强,速度慢
armeabi-v7a 第7代 ARM v7,使用硬件浮点运算,具有高级扩展功能
arm64-v8a 第8代,64位,包含AArch32、AArch64两个执行状态对应32、64bit
x86 intel 32位,一般用于平板
x86_64 intel 64位,一般用于平板
mips 少接触
mips64 少接触

如果强行使用armeabi-v7a,armeabi,x86_64版本的模拟器会怎么样?
系统会提示您x86运行非常快,并且实操证明,即使装了低版本的模拟器也会一直卡在开机界面进不去。

其他方法(如果自己的Androidstudio支持)
在Android Studio中,选择“ 生成”菜单,

猜你喜欢

转载自blog.csdn.net/Rssqzqyp/article/details/133701610