📱 两大移动操作系统体验报告
从 Pixel 换到 iPhone 后日谈。
| Pixel | iPhone | |
|---|---|---|
| 开放性 | 🟠2025年,Android 还能称之为开放吗¹ | 🟠支持侧载 |
| 文件管理器 | 🟢感谢开源社区 | 🟠答辩,应该是有三方替品,但是不在Github上? |
| 通知管理 | 🔴什么是通知? | 🟢支持通知AI总结 |
| 代理 | 🟢Root 后以 Linux 方式运行二进制,adb shell settings put global http_proxy 设置全局代理 |
🔴对自建用户完全不友好² |
| 容器 | 🟢Termux + Chroot,支持XRDP | 🟠iSH³ |
| 虚拟机 | 🔴Pixel 6 的虚拟机,到今天实现了吗? | 🟠UTM + JIT |
| 软件侧载 | 🟠未来可能受限 | 🟠SideStore 需 7 天续签 |
| Switch 模拟器 | 🟢Torzu,但没有 Tensor GPU 驱动 | 🟢MeloNX |
| 漫画 | 🟢Tachiyomi | 🟢Aidoku |
| 运营商 | 🟠仅 GrapheneOS 提供完整支持 | 🟢 |
| NFC 公交卡 | 🔴Google Wallet 里刷八达通需要八达通 APP 常驻后台,何意味 | 🟢 |
| 归属地 | 🟢CC来电拦截+ | 🟠闭源第三方,稍花哨 |
| Circle to Search | 🟢神中神 | 🟠也不是不能用 |
| 智能助手 | 🟢神中神 | 🔴纯纯的答辩,什么玩意儿 |
| 浏览器 | 🟢原生内核 | 🔴Safari 套壳,不支持扩展 |
¹ 2025年,Android 还能称之为开放吗
我最近一次通过刷机体验其他定制化UI应该是在什么时候?我记不太清了,也许是OnePlus 8 Pro上的Flyme OS。转投Pixel后,在享受原生Android优雅的同时,我也惊讶地发现:那些曾经活跃的第三方UI移植大都只剩GSI,类原生系统项目过的也不太好。
2012年,我拿到了第一部真正的安卓手机:摩托罗拉XT502。在Android 2.1的年代,你可以使用360安全卫士直接获取ROOT权限,第三方ROM项目,乐蛙、百度云、TencentOS、MIUI、FIUI、CyanogenMod百花齐放。到后来使用gucci、whyred、grus的时候,SuperSU/Superuser/Xposed刚挂,Magisk/EdXposed就出来继任。Flyme、魔趣、crDroid、Evolution X,那段时间XDA论坛每天都有新ROM发布,开发者社区异常活跃。
随着厂商对BL权限的收紧以及安卓系统本身的完善,刷机的人确实越来越少了。小米今年全面关闭了BL解锁通道,三星的OneUI 8直接移除了解锁BL的选项。现在还愿意开放BL的,基本只剩Pixel、黑厂系、索尼和摩托罗拉了。
说实话,对比iOS来说,开放性是安卓最核心的优势,但现在这个优势正在被谷歌自己丢掉。SafetyNet时代还能用模块直接绕过检测,但Play Integrity时代,整个游戏规则都变了。好不容易找到的密钥可能三天后就失效,然后又要陷入找密钥失效的循环,这种躲猫猫式的对抗让人难以接受。Google Wallet和部分Play商店应用彻底无法使用,不少App动不动就检测到Root直接闪退。
更讽刺的是,谷歌现在还打算限制安卓侧载APK,要求开发者签名验证。与此同时,欧盟的DMA法案反而逼着苹果在欧洲开放第三方应用商店。这算什么?安卓正在变成”有围墙的花园”,iOS反而在被迫拆墙。
从数据上看也能感受到这种衰落。LineageOS的用户量从2018年的300万跌到现在不足50万,XDA论坛ROM区从日均50多个新帖降到现在一周都凑不齐10个。开发者们要么转向了Magisk模块、LSPosed框架这些轻量化改造方案,要么干脆退圈了。
大刷机时代确实快要结束了。那些熬夜刷机、救砖、在论坛求助的日子,那些为了一个完美ROM反复折腾的执着,可能真的要成为时代的眼泪。但只要还有人愿意为自由付出代价,刷机精神就不会完全消亡。只是这个圈子会越来越小,越来越小众罢了。
² iOS代理体验谈
首先要感谢开源社区——V2Ray、Xray、Clash (Meta/mihomo)、sing-box这些代理平台,以及各种协议开发者的无私贡献。在使用了Surge的Snell后,才发现世界上原来有这么简陋的服务端:仅有绑定IP和端口、密钥和IPv6开关三个选项,最简单的Upstream居然都不支持,这样的协议还是闭源的,那iOS用户在代理这块吃的还是太差了。
Surge的迷思:当你不知道用户真正需要什么
用了Surge的Snell协议后,我才见识到什么叫”简陋”。服务端配置只有绑定IP端口、密钥和IPv6开关三个选项,连最基本的Upstream都不支持,这样的协议居然还是闭源的。Surge确实有强大的网络调试功能,MITM、脚本、模块系统做得很完善,但似乎忘了用户花几百块买这软件主要是用来干什么的——连VLESS都不支持,我还能说什么呢?
协议支持的尴尬现状
不少iOS客户端支持的直连协议只有VLESS Reality/Vision,对大部分自建用户来说这其实够了。但我没做过精确测试,凭使用感受来说,对于24小时挂着代理的人,VLESS的耗电确实比其他小众协议要高一些。
然后是ShadowTLS,我从形式上理解它是个链式代理,所以没怎么考虑。更让我困惑的是,许多客户端都支持了Juicity这个很久没更新的协议,而它甚至没有Android实现。
如果不是mihomo支持了Mieru,我可能真的没法继续用iOS了。顺便一提,我之前在Android上用的是NaiveProxy。Mieru在网络性能上确实比Naive好,而且支持UDP,但NaiveProxy基于Chrome网络栈伪装成正常HTTPS流量的思路应该是更优雅的。以上关于各个协议的推断都仅仅是我的猜想。
Karing:意外的救星
Karing是个基于sing-box的客户端,却神奇地支持了Mieru协议。考虑到sing-box的资源占用比Clash系要少很多,这可能是我目前的最佳选择了。虽然它是用Flutter写的,而我个人对Flutter这种跨平台框架没什么好感——界面总有种说不出的违和感,动画也不够原生流畅。
关于Clash系
说到Clash,Stash宣称自己基于Clash Premium,但那个版本早就停更了,主要是mihomo支持的协议他不支持。Pharos和ClashMi才更像一个Clash客户端该有的样子——直接导入完整配置文件而不是单个节点。Pharos虽然可调选项少了点,但至少核心功能是对的。
iOS用户在代理这块吃的确实太差了。
³ iOS上没有Termux的平替
Android毕竟有Linux内核加持,也没有二进制文件执行的限制,Termux这种终端模拟器用起来就很舒服,通过proot/chroot进完整的发行版后,基本能实现大多数Docker容器的功能,除了Systemd这种需要真正init系统的东西。想跑个服务、测试个脚本、编译个项目,都能直接在手机上搞定。转到iOS之前,我看到iSH是Alpine Linux实现,还挺期待的。结果用了才发现,这个基于Unicorn的x86 Linux Kernel 4.20虚拟机还有一堆Bug。不能运行Golang程序,那就丧失了七分乐趣。不得已转投UTM SE。没有JIT加持的UTM SE甚至表现不如超售到爆炸的E3,那还是自签吧。