LibChecker 中文文档 下载 App

32 位 vs 64 位——为什么重要

性能差异

64 位应用可以:

安全差异

64 位架构默认开启地址空间布局随机化(ASLR),有效空间更大,攻击面更难预测。同时现代 ARM 平台的内存隔离特性(如 MTE、PAC)只在 64 位下可用。

生态驱动

Google Play 从 2019 年 8 月开始强制新应用必须支持 64 位。AppGallery Connect 同步跟进。不支持 64 位的新应用在这两大渠道无法上架。

为什么 64 位迁移这么慢

作者 Absinthe 在官方文档中分析了几点原因:

  1. 64 位 so 文件体积更大:64 位编译产物通常比 32 位大 20%~40%,而 App 体积与下载量呈负相关
  2. 上游 SDK 未提供 64 位版本:APK 中每种架构必须包含全部 .so 文件——只要一个 SDK 没提供 64 位版,其他都白搭
  3. 分区域分发策略:很多国内厂商的 APK 商店不强制 64 位要求,导致国内市场环境相对宽松

16KB 页面对齐

这是 2024 年开始流行的新话题。Android 15 起推荐所有原生库使用 16KB 页面对齐。LibChecker v2.5 起已经在原生库列表中标记了哪些文件已经完成 16KB 对齐、哪些是未压缩但未对齐的。