Android之64位和32位区分
..
ABI 是什么
在Android编码时候 ,我们经常会看到ABI 。ABI的意思是 Application Binary Interface 的缩写。
不同 Android 手机使用不同的 CPU,因此支持不同的指令集。CPU 与指令集的每种组合都有其自己的应用二进制界面(或 ABI)。 ABI 可以非常精确地定义应用的机器代码在运行时如何与系统交互。 您必须为应用要使用的每个 CPU 架构指定 ABI。
常用的abi有:
- armeabi 对应着 ARMV5和ARMV6架构
- armeabi-v7a - 对应着 ARMV7a架构,是32位的寻址长度,里面放置32位系统上运行的so库
- armeabi-v8a - 对应着 ARMV8架构,64位寻址长度,里面放置64位的so
- x86 对应 x86架构(PC机的架构),里面放置x86上运行的so
- x86_64 对应着x86_64架构,里面放置x86_64上运行的so
可以通过Build.SUPPORTED_ABIS得到根据偏好排序的设备支持的ABI列表。
因为Android包管理器安装APK时,会自动选择APK包中为对应系统ABI预编译好的.so文件,不同的ABI,针对不同的cpu架构有不同的优先权例如: x86设备上,libs/x86目录中如果存在.so文件的话,会被安装,如果不存在,则会选择armeabi-v7a中的.so文件,如果也不存在,则选择armeabi目录中的.so文件。x86设备能够很好的运行ARM类型函数库,但并不保证100%不发生crash,特别是对旧设备。
64位设备(arm64-v8a, x86_64, mips64)能够运行32位的函数库,但是以32位模式运行,在64位平台上运行32位版本的ART和Android组件,将丢失专为64位优化过的性能(ART,webview,media等等)
如何区分64位app 和32位app
当下载安装一个App之后,从Launcher启动该应用,系统会由Zygote分叉出一个子进程来提供App运行的虚拟机和Runtime环境。
与32位系统不同的是,在64系统中会同时存在两个Zygote进程——zygote和zygote64,分别对应32位和64位应用。
所以,要进行App的32/64位检测,只需要看它的父进程是哪个Zygote即可。
http://www.taodudu.cc/news/show-6838732.html
相关文章:
- 性价比超高的32位ARM核单片机,普冉PY32F003
- 省钱绝招:用Nero刻录烧废光盘
- Linux下刻录光盘cdrecord
- Linux下刻录光盘—cdrecord
- Linux 光盘刻录和windows光盘刻录不能兼容问题
- [大学物理实验-3]声速测定
- 【大学物理】期末不挂科复习笔记
- 【Fluent】导出瞬态计算过程每一秒或每一个时间步的各个坐标/节点的物理量-温度场-压力场,TUI命令/file/export和/file/transient-export
- 51单片机-独立按键,矩阵按键,点阵
- 我也说说Emacs吧(2) - Emacs其实就是函数的组合
- mysql如何动态查询_Mysql动态查询
- Java循环结构与条件语句
- 黑马程序员_Java基础[4]_if、switch、while
- 今天收到苹果9条警告 这种不是闹着玩的,必须认真自己查查自己应用是否真的有问题或者让人怀疑的倾向
- C语言知识点小结一
- 关于 取 多个随机数的不重复问题
- flex 查查你的号码归属地
- 梅科尔工作室-Django保姆级教程-2-ORM介绍与Model设计
- 【postgres】5、pgbackrest 冷备份介绍、命令、脚本
- object的部分属性和方法 + 逗号操作符 + label语句 + with + switch + 参数 + typeof和instanceof检测类型 -- 大一下第十五周
- UE4 实时AI抠像 -- 不需绿幕
- 【Educoder作业】※ 数字图像——绿幕抠像
- 谈谈HMI 的自动化生成技术
- 决定成败的因素
- CRC--CRC8的查表法及直接计算法
- Oracle细节决定成败
- 对于 CRC 校验的 学习笔记
- 性格决定成败
- 学习笔记——CRC的基本原理与实现
- 下图的crc是怎么进行运算的?
Android之64位和32位区分相关推荐
- 32位oracle和64位的区别,区分你的oracle是64位还是32位
区分你的oracle是64位还是32位 sqlplus / as sysdba; SQL> desc x$ksmmem Name ...
- Android系统判断CPU是32位还是64位
Android系统判断CPU是32位还是64位 一.方法一,读取"/proc/cpuinfo"文件的第一行. 1.32bit 2.64bit 二.方法二,读取Android 的sy ...
- 服务器64位还是32位系统好,云服务器64位还是32位
云服务器64位还是32位 内容精选 换一换 Windows操作系统与Linux操作系统没有好坏之分,只有适合不适合.请根据业务需求选择Windows或Linux的操作系统.华为云提供了5个版本,且每个 ...
- 64位和32位有什么区别?到底哪个更快?——硬核科普
原文链接:联想商用服务----64位和32位有什么区别?到底哪个更快?--硬核科普 32位和64位到底指什么? 下载 Windows 操作系统,会区分 X 64 和 X 86 版本(一般 X 86 是 ...
- 计算机中64位和32位什么意思?有什么区别?
一.64位和32位主要所指 1.32位和64位意味着处理器一次能处理的最大位数.主要区别是针对CPU而言,指CPU一次处理的二进制位数,64位计算机一般指拥有64位的处理器和64位的操作系统,32位计 ...
- 【转载】64 位和 32 位有什么区别
1.运行能力不同. 64 位可以一次性处理 8 个字节的数据量,而 32 位一次性只可以处理 4 个字节的数据量,因此 64 位比 32 位的运行能力提高了一倍. 2.内存寻址不同. 64 位最大寻址 ...
- 砍掉 16 位、32 位,英特尔提出 x86-S ,直接支持 64 位架构!
整理 | 屠敏,郑丽媛 出品 | CSDN(ID:CSDNnews) 落后了自然要被淘汰,曾经的经典因此也正在逐步消失. 随着 64 位操作系统的普及以及现代软件对更多内存需求的不断增长,很多用户选择 ...
- Android 明年将不再支持 32 位应用
上周,Google 正式发布了 Android 13 并率先向 Pixel 设备推送了系统更新,其他 OEM 厂商也将跟进这一最新系统,并会在今年晚些时候向他们旗下的设备推送更新. 近日,Mishaa ...
- 选32位 64位 oracle,32位PLSQL配置为64位的Oracle和64位系统
问题描述: 配置:64位系统64位Oracle32位PLSQL 安装好Oracle之后,用PLSQL连接数据库,却总是不显示PLSQL的登录窗口,不能正常连接到数据库,没有数据库的初始化内容. 解决方 ...
- IPHONE 64位和32位
IPHONE 64位和32位 参考段一:iPhone 5没有64位的,只有32位架构,苹果是从iPhone 5s开始对全线移动产品使用64位架构.iPhone 5s发布之后的所有产品都是64位的使用L ...
最新文章
- vue-cli3 一直运行 /sockjs-node/info?t= 解决方案
- leetcode算法题--数组中数字出现的次数 II
- 在Android中使用FlatBuffers - 简介
- Java反射机制:表单数据自动封装到JavaBean中【IT】
- css div设置inline-block后 div顶部对齐
- 的硬件报错_工程师经验:78%的硬件失效罪魁祸首 —— 焊接问题
- [bzoj 2768][bzoj 1877]
- transfer learning(matlab 实现)
- 【LeetCode】168. Excel Sheet Column Title 解题小结
- 我的 Java 自学之路
- PMP培训班内部资料,免费分享
- DatePicker 设置最小日期是当前时间报错:java.lang.IllegalArgumentException: fromDate:xxx does not preced toDate: xx
- 总结淘宝客应该注意的佣金陷阱
- ORACLE中通过SQL语句(alter table)来增加、删除、修改字段
- CVPR21Look Closer to Segment Better: Boundary Patch Refinement for Instance Segmentation
- 共射极单管放大器的Multisim仿真实验
- GBase 8a管理集群gcware的日志-vote leader、flower、candidate部分
- 解压缩的mysql_Windows 上解压缩版 MySQL 配置
- 无忧行-出国必备神器
- 联想y510 驱动精灵