TechForge

15th May 2014

Share this story:

Tags:

Categories::

For a long time iOS apps’ quality and quantity far surpassed what was offered on Android due to it being a more mature platform. Arguably, on smartphone at least, the two operating systems have reached some amount of parity.

However, there are still apps which are iOS-only, and few apps on Android tablets are yet to reach the quality of those found on iPad. Six PhD students at Columbia University‘s Department of Computer Science may have solved this problem with their work on Project Cider, an OS compatibility architecture capable of running iOS apps on Android.

A proof-of-concept video has been released by the team which shows iOS apps – even Apple’s own applications such as iBooks – running on a Nexus 7 tablet:

 

It is achieved through leveraging binary compatibility techniques such as compile-time code adaptation and diplomatic functions. Essentially, Cider copies the libraries and frameworks it needs and then convinces the app it is running on Apple’s XNU kernel rather than Android’s Linux-based kernel.

Here’s an extract from the paper:

We present Cider, an operating system compatibility architecture that can run applications built for different mobile ecosystems, iOS or Android, together on the same smartphone or tablet. Cider enhances the domestic operating system, Android, of a device with kernel-managed, per-thread personas to mimic the application binary interface of a foreign operating system, iOS, enabling it to run unmodified foreign binaries.

This is accomplished using a novel combination of binary compatibility techniques including two new mechanisms: compile-time code adaptation, and diplomatic functions. Compile-time code adaptation enables existing unmodified foreign source code to be reused in the domestic kernel, reducing implementation effort required to support multiple binary interfaces for executing domestic and foreign applications.

Diplomatic functions leverage per-thread personas, and allow foreign applications to use domestic libraries to access proprietary software and hardware interfaces. We have built a Cider prototype, and demonstrate that it imposes modest performance overhead and runs unmodified iOS and Android applications together on a Google Nexus tablet running the latest version of Android.

The performance at this early stage leaves much to be desired – but this could be somewhat due to the incomplete OpenGL ES implementation. Hopefully, given time, this already impressive accomplishment can realise the dream of running both platforms’ apps side-by-side.

Project Cider, at this point, also does not support many hardware features which some apps require such as GPS, cameras, cell phone radio, Bluetooth .etc somewhat due to the a huge myriad of hardware to support which is where you will have heard many-a-time about the ‘fragmentation’ issue Android developers face in general.

No plans have been announced to continue the project, but it has a lot of support, and we can only hope the team move forward to bring us a full-fledged product from their research.

You can read the full published research paper from the team here.

Would you be interested in the ability to run iOS apps on Android? Let us know in the comments.

About the Author

Senior Editor

Ryan Daws is a senior editor at TechForge Media with over a decade of experience in weaving narratives and dissecting complex topics. His articles and interviews with industry leaders have earned him recognition as a key tech influencer from numerous organisations. Under his leadership, publications have been praised by analyst firms for their excellence and performance. Connect with him on X, Mastodon, Bluesky, Threads, and/or LinkedIn.

Related

20th August 2026

19th August 2026

17th August 2026

12th August 2026

Join our Community

Subscribe now to get all our premium content and latest tech news delivered straight to your inbox

Popular

20090 view(s)
10270 view(s)
5817 view(s)
5482 view(s)

Subscribe

All our premium content and latest tech news delivered straight to your inbox

This field is for validation purposes and should be left unchanged.