For years there was no good way to do that. But now there is. Sort of.
The folks at Project Sandcastle have released a tool for loading Android onto a jailbroken iPhone. It only works with the iPhone 7 and 7+ so far and a some key components don’t work yet. But it does open the door to the possibility of breathing new life into old hardware… or at least confusing your friends and family.
You can read more about the history of Project Sandcastle and the work involved in porting Android to run on iPhones at the Project Sandcastle website, but in a nutshell the developers had to get a Linux kernel up and running on Apple’s phones, and then work from there to enable support for Android and various hardware components and then enable support for key features such as the CPU, memory, storage, WiFi, display, and touchscreen.
At this point the developers note that Project Sandcastle is still very much a beta. Many things are still broken, including audio, cellular connectivity, audio, Bluetooth, the camera, and the GPU.
In other words, you’re probably better off running iOS on an iPhone 7 for now if you’re looking for a phone that you can actually use… as a phone.
But given how tightly Apple locks down its hardware, it’s impressive to see even this much progress in porting a completely different operating system to run on Apple’s hardware.
Here is an iPhone 7 booting Android ! pic.twitter.com/cfCdSEzTbo
— matteyeux (@matteyeux) March 4, 2020
While it’s possible that Project Sandcastle could add support for additional hardware in the future, as of March 4th, 2020 other iPhones and iPod touch models have even fewer working components (it’s kind of hard to use an operating system if it doesn’t support your device’s CPU).
Since Project Sandcastle relies on the checkra1n exploit/jailbreak, it’s unlikely to support any devices newer than an iPhone X or older than an iPhone 5S though.
The source code for Project Castle is available at github, and you can find Linux and Android downloads