基于Project Sandcastle - Android build项目
在此感谢Project Sandcastle开发者团队的努力,实现iOS设备运行Android 10系统这一创举。
鉴于中国大陆特殊的网络环境,我将nand.gz文件的安装部分移至了本地,若nand.gz文件下载地址更新,或安装出现问题,可以尝试从项目官网下载最新原版使用。
目前版本仅支持苹果macOS系统和Linux系统,设备目前仅支持iPhone 7/iPhone 7 Plus!本文具体讲一下macOS上如何操作。
我做了汉化版android-sandcastle.zip,你可以通过文末的扩展链接获取。你也可以在官网下载Android build。
(官网版本是在安装时直接通过设备下载nand镜像,并且有访问Google的联网过程,国内使用不便,我在汉化版移除了联网校验,并把nand镜像的下载交给了你自己掌握,因此你要把nand镜像下载到电脑同一文件夹目录下)
注意!这将在iPhone的APFS上创建一个新卷。这不会损坏设备iOS部分的所有文件。但是,如果你不愿意还原设备固件。不要尝试此教程,因为它仍处于测试阶段。
安装方法
下载android-sandcastle.zip文件,并进行解压。下载安装checkra1n。必须把checkra1n拷贝安装进macOS的“应用程序”文件夹中才能运行Project Sandcastle。原版可跳过3、4步骤。如果你使用的是我的汉化版,接下来你需要准备好nand镜像文件,下载地址在扩展链接压缩包内说明。你可直接通过下载工具或浏览器下载。下载完成后,请将nand.gz文件放在AndroidSandcastle文件夹目录下。第一次安装时,首先使用checkra1n将iPhone引导,引导成功后进入iOS桌面会出现checkra1n图标。运行setup.sh脚本(可以将脚本文件直接拖入Mac的终端App后回车)。安装只需进行一次,无需在同一设备上重复进行。
启动Android
不需要每次都进行安装步骤。
安装完成后,每一次启动Android,只需把iOS设备置于DFU模式,运行start.sh脚本(可以将脚本文件直接拖入Mac的终端App后回车)
卸载删除
我在汉化版提供了uninst.sh脚本文件进行卸载,和安装一样,用checkra1n引导进入iOS系统后,运行uninst.sh脚本。
你也可以用官方以下步骤手动卸载。
如果你想完全卸载删除Android NAND映像,则可以通过SSH登录到已校验的设备,并装入最终卷并删除nand文件。为此,请运行ls / dev / disk0s1s *并找到最后一个卷。你可以通过运行/System/Library/Filesystems/apfs.fs/apfs.util -p VOLUME_HERE来验证其正确的卷,如果显示的是Android,那是正确的。一旦有了卷路径,就可以运行
mkdir -p /tmp/mnt
mount -t apfs VOLUME_HERE /tmp/mnt
rm -rf /tmp/mnt/nand
umount /tmp/mnt sync
这样可以为你腾出空间。
目前还有很多部分没有驱动,因此bug较多,仅供尝鲜。附上目前的兼容性情况:
看来iPhone 7系列要再火一波了。