Android-Device supports x86,but APK only supports armeabi-v7a,armeabi,x86_64
来源:互联网 发布:没有sqlserver服务 编辑:程序博客网 时间:2024/06/14 03:55
最近最项目遇到的一个问题:
Android 的 so 库和 ABI 配置我原先也是没有什么概念的,直到上个周,在我尝试跑一个程序的时候,真机运行没问题,但是用伟大的模拟机的时候,遇到了这么一个错误:
模拟机的下面显示:
Device supports x86,but APK only supports armeabi-v7a,armeabi,x86_64;
模拟机的设备是 x86,但是运行的这个程序的 apk 却只支持 armeabi-v7a,armeabi 和 x86_64 三种。
这个问题不仅仅是一个问题,它是很多个问题
是的,那么问题来了
x86,armeabi-v7a,armeabi,x86_64 到底是什么玩意?
我们的代码是在哪里设置apk对它们支持的?
怎么查看和设置模拟机的支持类型?
为什么我连接的真机大华为 HUAWEI PE-TL20 没有显示这样的错误?
宝宝发现了真相,快来夸我
为了弄明白上面的几个疑问,我 google 了很多相关方面的内容,终于召唤真相~~下面一个个来解释~
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 少接触
2.我们的代码是在哪里设置apk对它们支持的?
如果你和我用的开发工具都是 Android Studio 的话,那么在程序的主module 的 build.gradle中你会发现有这么个代码:
defaultConfig { ndk { abiFilters "armeabi", "armeabi-v7a", "x86_64" } }
3.怎么查看和设置模拟机的支持类型?
这个问题非常简单,我们在创建一个模拟机的时候,就有 ABI 的选择,因为粗心,之前一直都没有发现,看下图:
- Android-ABIFilter-Device supports x86,but APK only supports armeabi-v7a,armeabi,x86_64
- Android-Device supports x86,but APK only supports armeabi-v7a,armeabi,x86_64
- Android-ABIFilter-Device supports x86,but APK only supports armeabi-v7a,armeabi,x86_64
- Android-ABIFilter-Device supports x86,but APK only supports armeabi-v7a,armeabi,x86_64
- Device supports x86, but APK only supports armeabi-v7a
- Device supports x86, but APK only supports armeabi-v7a
- Device supports x86, armeabi-v7a, but APK only supports armeabi 设备x86
- 使用Genymotion运行项目的时候出现Genymotion device supports x86, but APK only supports armeabi-v7a解决方案
- AS部署失败,Device supports,but APK only supports...
- armeabi-v7a/arm64-v8a/x86/x86_64均兼容armeabi
- Android armeabi armeabi-v7a
- armeabi armeabi-v7a android
- Android 关于arm64-v8a、armeabi-v7a、armeabi、x86、x86_64下的so文件兼容问题
- armeabi,armeabi-v7a,x86等
- armeabi 、armeabi-v7a 和x86
- android libs文件夹下armeabi armeabi-v7a x86 arm64-v8a
- Android 中arm64-v8a、armeabi-v7a、armeabi、x86简介~
- Android 中的 armeabi,armeabi-v7a,x86,mips区别
- Node.js安装(window10需要管理员权限)
- 第一篇、maven学习之路--下载安装
- POJ 3259 Wormholes (Bellman-Ford 求负环)(F)
- JSONP跨域原理浅析
- 基于jQuery实现的Ajax 验证用户名唯一性
- Android-Device supports x86,but APK only supports armeabi-v7a,armeabi,x86_64
- 英伟达深度学习实习生面试指南
- Pointcut is not well-formed: expecting 'name pattern' at character position
- zoj1094 Matrix Chain Multiplication 模拟
- 大型网站技术架构解决方案归纳
- 关于绝对路径和相对路径
- java爬虫教务信息门户(java爬虫04)
- 更改Kali Linux MAC地址
- ntp导致其他线程卡顿原因总结