This past Saturday a thread popped up in the CrackBerry Forums by new member businesscat2000, titled iOS Apps running on PlayBook! The thread linked to this video on youtube, which runs through a demo of iOS apps running on the BlackBerry PlayBook via an iOS player of sorts, including Super Monkey Ball, Tiny Tower, Tom Tom, Sushi Cat, iFart (of course) and more. This video also linked to another youtube video, showing the iOS Player running in a Windows environment.
It took less than an hour for businesscat2000 to claim responsbility for the videos and being the brains behind this extremely interesting development project of sorts. In the forums, the community responded with both shock and awe and a little disbelief, to which the developer explained his approach:
The CPU isn't emulated on Playbook (though it is on Windows). It works very similarly to how WINE works to run Windows applications on Linux. The app binary is mapped into memory and imports are resolved to point to my own implementation of the various APIs needed. iOS actually uses a few open APIs already, which Playbook supports just as well (GL ES, and OpenAL). The bulk of the work has been in implementing all of the objective C classes that are required. The ARM code of the applications run as-is - the armv6/v7 support on PB/iDevices are pretty much identical, and the code is designed to run in USR mode. No SWIs, GPIO accesses or any of that kind of shenanigans.
Pulling something like this off is a massive undertaking, so understandably the community pushed back with questions and doubt. Maybe these are just app video playbacks running in an app? Or maybe these are Android apps and not iOS apps as some of these apps are available on Android too?
Wanting to get to the bottom of this I have been in touch with the developer quite a bit since Saturday. And yes, everything seen so far is legit.
Test #1: I had him install an iOS app -- SketchMobile -- and draw out Hi CrackBerry on it on video (see below). No app streaming player here. I witnessed it.
Test #2: Just a few hours ago we sent the developer the iPhone app for our sibling site iMore. This is only an iPhone app and not available on any other platform. As you can see in the video above, he got the nuts of it up and running in less than hour. It's not pulling in images from the web, but the app loads and it is working. Huge.
Seeing is believing, and we have seen. There is more work yet to be done still. Right now it works best with API's under v4, and supports builds for universal binary or armv6. Right now it works best with apps like games, but apps that need UIWebView and CoreData, not so much yet.
To iOS developers out there, to further prove his progress, businesscat2000 is willing to test out your iOS apps. Jump over to this forum post for more explanation and details.
As for what this all means? It's a little too soon to tell, but obviously the ability to run iOS apps on the BlackBerry 10 platform would be HUGE for us BlackBerry users. One thing I do know for sure we'll keep on top of this story as it continues to develop. More videos below, and be sure to jump into the forums to discuss.
Hello CrackBerry, written to me by the developer on the SketchBook Mobile iOS app
Original iOS apps on PlayBook demo video
Angry Birds on iOS Player on Windows