Researchers at Columbia University Bring iOS Apps to Android
Up until a couple of device generations ago, Apple’s iOS held a distinct advantage over Android with regards to both application quality and quantity. But recently, Android apps have caught up, and in many ways surpassed what’s available or even possible on iOS. Much of this is due to Android now commanding the vast majority of smartphone market share, which in turn piques third party developer interest. However, a good deal is due to Android giving third party developers significantly more freedom than what is allowed by iOS.
Despite the increase in application quality and quantity, it’s not uncommon for a some relatively significant programs to be platform-specific. For example, if you have plenty of iOS-toting friends, you’ve undoubtedly found yourself feeling a bit left out without the ability to communicate via iMessage or FaceTime. This is where projects like Cider come into play.
Developed by members of the Department of Computer Science at Columbia University, Cider is an OS compatibility architecture that is capable of running iOS applications on Android. Rather than using a strict virtual machine, this is done with a novel approach including compile-time code adaptation, as well as diplomatic functions. The former allows for existing application source code to be adapted without modification for use on the new architecture, whereas the latter allows foreign apps to hook into host device libraries, including those for proprietary software and hardware interfaces such as 3D acceleration hardware.
A video of the Cider proof-of-concept can be found below. As can be seen in the video, general UI performance is what one would expect without 2D hardware UI rendering. However, the demo also includes a clip of Passmark running a 3D benchmark at a good frame rate and with full access to the host hardware’s rendering capabilities.
Although there are many legal and technical hurdles that stand in the way of a project like this ever reaching fruition, it’s exciting to see that such a project is even possible on Android. After all, this just serves as further proof of Android’s potential.
Hopefully, this project’s source code will be released at some point and other developers can build upon and enhance this development. Until then, this is still quite noteworthy. You can learn more by visiting the project page and reading the team’s full research paper (PDF warning).
What would you do to be able to run iOS apps and games on your Android device? Let us know in the comments below.
[Many thanks to XDA Senior Moderator efrant for the tip!]