安装包到底该怎么选择?

一、先搞清两件事:系统,和架构

选安装包,本质是在回答两个问题。

第一件:你用什么系统?
安卓、iOS、Windows、macOS、Linux、电视。这个一般不会搞错。

第二件:你的 CPU 是什么架构?
这才是真正的重灾区。同样是 Windows,有 x64 的机器,也有 ARM64 的机器;同样是 Mac,M 系列芯片和 Intel 芯片的包互不通用;Linux 更是分成 x86_64 和 aarch64 两大阵营。

架构选错,包一定装不上。而且在下载页面上,它往往只藏在文件名里,不显眼。


二、Android:.apk 怎么选

安卓的安装包统一是 .apk,但同一个应用经常会提供四个版本。

文件名里的标识适用设备
arm64-v8a绝大多数现代安卓手机(64 位 ARM)
armeabi-v7a老旧或低端机型(32 位 ARM)
x86_64安卓模拟器、少数 x86 平板
universal / 不带架构后缀三合一通用包,什么设备都能装,代价是体积更大

拿不准就选通用包。它是把多个架构打包在一起,虽然大一些,但绝对不会因为架构不对而装不上。

另外几个格式需要区分:

  • .apk → 正常的安装包,下载后允许「安装未知来源应用」即可
  • .aab → Google Play 的上架格式,不能直接安装,普通用户不用管
  • .xapk / .apks → 分包合集,需要专门的安装器解包

怎么查:设置 → 关于手机 → 处理器信息,或者装个 DevCheck / AIDA64 看 CPU 架构。2020 年以后出的手机,基本都是 arm64-v8a。


三、iOS:装的是 .ipa 文件

iPhone 和 iPad 的安装包格式是 .ipa。

  • App Store 里的应用:直接在 App Store 里点「获取」,不用管什么文件格式。
  • 非 App Store 的应用:拿到 .ipa 文件后必须自签(签名)才能安装,直接双击、拖进去都是装不上的。

也就是说,.ipa 不是「下载完就能用」的安装包,它需要先用自己的证书签一遍。

注意两点:

  1. 用免费 Apple 开发者账号签出来的应用,只有 7 天有效期,到期会打不开,需要重新签一次。
  2. 「iOS 安装包下载」这类网站给的 .ipa,能不能装取决于你有没有签名手段,跟文件本身没关系。

四、Windows:看 .exe、.msi、.zip

Windows 上最常见的三种包,区别其实很简单:

格式是什么什么时候选
.exe可执行程序。可能是安装器(NSIS / Inno Setup / Squirrel),也可能是绿色单文件最通用,绝大多数情况直接双击
.msiWindows Installer 标准安装包需要选安装目录、企业批量部署、要静默安装(msiexec /i xxx.msi /qn)
.zip / .7z绿色便携版,解压即用,不写注册表不想装、想放 U 盘带走、没有管理员权限

几个值得知道的细节:

  • .exe 和 .msi 都能装,功能一样。有的开发者会同时提供,纯粹是给你多一个选择。追求省事就选 .exe。
  • 绿色版不是「功能阉割版」,只是没走安装流程。缺点是通常不会自动创建快捷方式、不会自动关联文件类型。
  • 如果 .exe 装的时候不弹 UAC 提权窗口,说明它装到了当前用户目录(比如 %LOCALAPPDATA%),这种卸载时一般不需要管理员权限。
  • 极少数情况你会看到 .appx / .msix,那是微软商店专用的包格式,个人用户基本用不上。

架构怎么分:普通电脑(Intel、AMD)用 x64;高通骁龙 X 之类的 ARM 笔记本用 arm64。32 位的 x86 版本现在基本见不到了。

怎么查:设置 → 系统 → 系统信息,看「系统类型」。写着「基于 x64 的处理器」就下 x64,写着「基于 ARM64 的处理器」就下 arm64。


五、macOS:先确认你是什么芯片

Mac 是下错包的重灾区,因为苹果从 Intel 换到自研芯片之后,同一个软件变成了两个互不兼容的版本。

格式是什么什么时候选
.dmg磁盘映像。打开后把 App 拖进「应用程序」最常见、最省事
.pkg安装程序。可以装到系统目录、执行安装脚本驱动类、需要装到系统层的软件
.zip压缩的 .app,解压后拖进「应用程序」没有 dmg 时的备选

架构有三种标识:

  • arm64 → Apple Silicon(M1 / M2 / M3 / M4)
  • x64 / x86_64 → Intel 芯片
  • universal / universal2 → 两种芯片通吃,一个包装哪台都能跑

不同开发者的做法不一样,这直接决定你要不要挑:

  • 有的只放一个 xxx.dmg,不加架构后缀,那通常是 universal 通用包,随便下;
  • 有的明确分成 mac-arm64.dmg 和 mac-x64.dmg 两个,这时候选错是真的装不上;
  • 还有的只在文件名里写 osx-arm64、osx-x64,需要你认得出。

怎么查:打开「关于本机」,看「芯片」那一栏。写着「Apple M1/M2/M3/M4」就是 arm64,写着「Intel Core i5/i7/i9」就是 x64。或者打开终端输入 uname -m,返回 arm64 或 x86_64。

一个补充:Intel 版的应用在 Apple 芯片上通过 Rosetta 2 也能跑,但会有性能损耗和兼容问题。能选原生 arm64 就一定选原生。


六、Linux:看你的发行版用哪个包管理器

Linux 的包最多、最乱,但其实只要认准一件事:你的发行版属于哪个「家族」。

格式适用发行版用法
.debDebian、Ubuntu、Mint、Kali、Deepin、UOSsudo apt install ./xxx.deb
.rpmFedora、RHEL、CentOS、Rocky、Alma、openSUSEsudo dnf install ./xxx.rpm
.pkg.tar.zstArch、Manjaro、EndeavourOSsudo pacman -U xxx.pkg.tar.zst
.AppImage任何发行版都能用chmod +x 后直接双击运行
.tar.gz通用压缩包,需要手动解压解压后找里面的可执行文件

最省心的选择是 .AppImage:单文件、免安装、不碰系统依赖。第一次使用先给执行权限:

chmod +x xxx.AppImage
./xxx.AppImage

如果它是从桌面环境双击启动的,可能需要在文件属性里勾选「允许作为程序执行」。

架构:普通电脑是 x86_64(也写作 amd64、x64);树莓派、ARM 服务器、部分 ARM 笔记本是 aarch64(也写作 arm64)。

怎么查:终端输入 uname -m。返回 x86_64 就下 x64 包,返回 aarch64 就下 arm64 包。


七、电视:先看你家电视是什么系统

电视这块最容易懵,因为「电视」本身不是一个统一的系统。

电视 / 盒子类型底层系统装什么
安卓电视、电视盒子、投影仪Android TV / 基于安卓的定制系统.apk
小米、海信、TCL、创维、长虹等国产电视大多是安卓底层定制.apk(但部分型号限制第三方安装)
Apple TVtvOS只能 App Store,无法侧载
三星电视Tizen.wgt
LG 电视webOS.ipk

国产电视和盒子绝大多数是安卓底层,所以装的就是 .apk,和手机是同一个格式。三星和 LG 用的是自家系统,格式完全不同,普通用户基本碰不到。

电视上的 apk 和手机上的是一回事吗?

格式一样,但体验不一样。

电视没有触屏,只有遥控器。手机版 apk 装到电视上,经常出现「按钮点不到」「界面要鼠标才能操作」的情况。所以很多软件会单独出一个 TV 版,界面用焦点框设计、方向键就能操作。

判断方法:

  • 文件名里带 tv、androidtv、leanback 的,一般是 TV 专用版
  • 普通 apk 也能装,但可能需要接个鼠标才能用

架构怎么选

电视盒子的架构和手机类似:

  • 新盒子(近几年的) → arm64-v8a
  • 老盒子(2016 年前的) → armeabi-v7a
  • 少数 Intel 芯片盒子 → x86_64

拿不准就下通用包,或者先用 armeabi-v7a 试——它对老设备兼容性更好。

关键前提:电视默认不允许装第三方应用。需要先到设置里打开「允许安装未知来源的应用」。这个开关有的品牌藏得很深——常见做法是进「关于电视」连续点击「版本号」七次,打开开发者模式后才能看到。


八、重灾区:架构命名的 N 种写法

这是最容易把人绕晕的地方。同一个架构,不同的开发者会用不同的名字写。记住下面两张表就够了:

64 位 Intel / AMD(普通电脑)

x64 = x86_64 = amd64 = Intel 64

这三个词完全等价,只是不同生态的习惯叫法:Windows 和 macOS 爱写 x64,Linux 的 rpm 包爱写 x86_64,Debian 系爱写 amd64。

64 位 ARM

arm64 = aarch64 = ARMv8

苹果、安卓和电视盒子写 arm64,Linux 内核和发行版写 aarch64。

32 位(基本可以忽略)

x86 = i386 = i686  arm = armhf = armv7 = armeabi-v7a

顺带提一个真实案例:某音乐播放器的 Linux 包,同一个架构的 64 位版本,在 AppImage 里叫 x86_64、在 deb 里叫 amd64、在 tar.gz 里叫 x64。看着像三个不同的东西,其实是同一个。

所以看到文件名里有 aarch64,别以为是什么特殊版本——它就是 ARM64。


九、一页速查表

实在懒得看上面,直接对着这张表选:

你的设备该下哪个
安卓手机xxx-arm64-v8a.apk,拿不准就用通用 apk
安卓模拟器xxx-x86_64.apk
iPhone / iPadApp Store;非商店的 .ipa 需自签
Windows 普通电脑xxx-x64.exe 或 xxx-x64.msi
Windows ARM 笔记本xxx-arm64.exe
Windows 不想安装xxx.zip 绿色版
Mac(M1/M2/M3/M4)xxx-arm64.dmg 或 xxx.pkg(文件名叫 universal 的也行)
Mac(Intel)xxx-x64.dmg 或 xxx.pkg
Ubuntu / Debian(普通电脑)xxx-amd64.deb
Ubuntu / Debian(ARM)xxx-arm64.deb
Fedora / RHEL / openSUSExxx.x86_64.rpm
Arch / Manjaroxxx-x86_64.pkg.tar.zst
任意 Linux,不想折腾xxx.AppImage
安卓电视 / 电视盒子 / 投影仪xxx.apk(优先 TV 版 / arm64-v8a)
Apple TV只能 App Store

十、几个几乎人人都会踩的坑

1. macOS 提示「无法打开,因为无法验证开发者」

不是软件坏了,是苹果的 Gatekeeper 拦截。去「系统设置 → 隐私与安全性」,页面下方会有一条拦截记录,点「仍要打开」。或者在应用上右键 →「打开」,连续两次确认。

2. AppImage 双击没反应,或者报 FUSE 错误

Ubuntu 22.04 之后默认不装 libfuse2,而 AppImage 依赖它。装一下就好:

sudo apt install libfuse2

3. 下载到了 .aab,怎么都装不上

那是 Google Play 的上架格式,不是给用户装的。回头找 .apk。

4. AppImage 在旧系统上打不开

AppImage 会链接构建机上的 glibc 版本,在新系统上编译的包,在老系统上可能直接报错。有些开发者会特别为老系统单独出一个版本,看到这种说明别嫌它「特殊」,那是给你准备的。

5. 把 .tar.gz 当成安装包

它只是压缩包。解压之后里面通常是一个可执行文件加一堆资源目录,必须整个目录一起保留,不能只把那个可执行文件单独拖出来。

6. 电视上装了 apk,用遥控器操作不了

装的多半是手机版。要么换 TV 专用版(文件名带 tv / leanback),要么接个鼠标先用着。

7. 32 位系统还在找包

2023 年之后,绝大多数软件已经停止发布 32 位版本了。如果你的机器还是 32 位,基本只能找老版本。


最后

选安装包这件事,说穿了就是两个判断:系统对不对,架构对不对。

系统看名字就知道,架构记住两条:Intel/AMD 认 x64、x86_64、amd64;ARM 认 arm64、aarch64。

下次下载前,先花十秒看一眼文件名里有没有这些词,能省掉一次白等半小时的下载,也能省掉一次「这软件是不是有病毒」的自我怀疑。

© 版权声明

相关文章