公众号旧文
Redmi Note 12 已成功启动 iOS
前几天,我写过一篇关于HackiOS的文章,介绍了开发者尝试让真正的苹果 iOS 系统运行在安卓手机上的计划。
当时,HackiOS 还处于底层开发阶段,公开展示的主要是 UEFI 启动界面,距离完整运行 iOS 还有不少技术难题。
最近又传来了新消息。
10 月 19 日,独立开发者 Makr 展示了在小米 Redmi Note 12 4G 上运行 iOS 16 的成果,并公开了相关代码。
这次的项目与此前介绍的 HackiOS,存在技术联系。
一、Redmi Note 12 真的运行了 iOS?
这次的项目名为ios-topaz。
开发者使用的设备是 Redmi Note 12 4G,搭载高通骁龙 685 处理器。
与常见的 iOS 主题、桌面启动器不同,这次移植使用了苹果的 XNU 内核,以及来自 iPhone X 的 iOS 16.7.16 系统组件。
其中包括负责启动系统服务的 launchd,以及负责桌面界面的 SpringBoard。
根据开发者公开的资料,手机已经能够进入 iOS 主屏幕,打开设置,并通过触摸屏进行操作。
系统设置中的设备信息显示为 iPhone X,运行版本为 iOS 16.7.16。
这意味着,开发者确实让真正的 iOS 系统组件在非苹果硬件上运行了起来。
不过,这仍然是一个经过大量修改的实验性系统。
并不意味着 Redmi Note 12 已经变成了一部功能完整的 iPhone。
二、目前已经实现了哪些功能?
项目早期只能进入锁屏界面,触摸功能也尚未完成。
但开发进度相当快。
根据开发者截至 10 月 20 日更新的 GitHub 文档,目前已经实现触摸屏、音量键、电源键以及部分 Wi-Fi 功能。
手机能够扫描并连接 WPA2 无线网络,还可以在重启后重新连接。
不过,蓝牙、蜂窝通信、相机、音频等功能仍然缺失。
公开仓库中的图形渲染主要依靠 CPU,性能有限,部分应用也无法正常显示内容。
此外,为了让系统成功启动,开发者关闭或绕过了大量苹果原有的安全机制。
所以,目前的成果更适合用来研究操作系统移植,而不是给普通用户日常使用。
三、它和之前的 HackiOS 有什么关系?
之前介绍的 HackiOS,同样致力于让 iOS 运行在安卓手机硬件上。
HackiOS 团队曾展示自定义 UEFI 启动环境,并表示未来会免费公开代码。
而这次的 ios-topaz,走的是另一条开发路线。
根据 GitHub 说明,ios-topaz 实际上基于另一个名为 ios-sweet 的开源项目。
ios-sweet 最初针对 Redmi Note 10 Pro 开展 iOS 16 移植,随后 Makr 将相关成果适配到了 Redmi Note 12 4G。
不过,两条路线并非完全没有交集。
ios-topaz 的开发者明确提到,他们已经在实机上使用来自 HackiOS 项目的补丁,实现了 GPU 加速。
根据开发者的说法,HackiOS 的作者私下分享了部分代码,相关 GPU 补丁将在 HackiOS 公开源代码后再加入 ios-topaz 仓库。
这说明两个项目之间确实存在技术交流与成果共享。
但需要注意,GPU 加速相关代码尚未全部公开,目前还不能仅凭这一描述,就认定相关功能已得到独立复现。
同样,也不能把 ios-topaz 简单理解成 HackiOS 的新版本。它们仍然是不同的项目。
四、AI 可能正在改变底层系统开发
这次还有一个值得关注的细节。
ios-topaz 项目包含大量底层代码、内核补丁和构建工具,其开发资料也体现了 AI 编程工具参与工程工作的迹象。
过去,操作系统移植往往需要开发者长时间研究硬件寄存器、内存映射、启动流程和驱动接口。
如今,AI 编程工具可以辅助分析代码、生成补丁、整理错误日志以及探索兼容性问题。
当然,AI 并不能自动解决所有硬件适配难题,最终仍然需要开发者在真实设备上测试和验证。
目前也没有足够的公开证据,能够准确判断这个项目有多少代码由 AI 生成。
但至少,这次成果让我们看到了 AI 辅助复杂底层工程开发的一种可能性。
五、安卓手机真的能刷 iOS 了吗?
从技术验证的角度来说,答案正在逐渐变得肯定。
但从普通用户的角度来说,现在还远远谈不上成熟。
虽然 ios-topaz 已公开部分源代码和构建方法,但安装需要解锁 Bootloader,还涉及对手机用户数据分区的操作。
这意味着尝试移植可能导致原有数据丢失,而且无法保证系统稳定运行。
更不用说苹果专有系统组件的授权、系统安全、软件兼容性和长期维护等问题。
能够启动 iOS,与能够长期使用 iOS,仍然是两回事。
写在最后
回头看之前介绍的 HackiOS,当时开发者还在努力解决系统启动的问题。
如今,另一个开源项目已经让 Redmi Note 12 运行起了真正的 iOS 16,并逐步实现触摸和网络等基础功能。
两者虽然不是同一个项目,却存在技术交流,也都在探索同一个问题:
苹果的 iOS,究竟能在多大程度上摆脱原有硬件平台的限制?
目前我们还不知道答案。
但这次至少证明了一件事:让 iOS 在安卓手机上运行,已经不再只是停留在概念和启动菜单上的尝试,而是有了能够查看代码、研究实现方式的实际成果。
对普通用户来说,它暂时没有多少实际价值。
但对于喜欢折腾系统、研究内核和硬件的开发者而言,这无疑是一项值得持续关注的技术实验。