Android App Player

Back in March of this year when RIM announced the Android player for PlayBook, my first thought was awesome! We were going to get the best of both worlds, we'd be able to run apps from two of the great software platforms out there. When the leaked version made its way to the internet a couple months ago and I had some actual hands on experience my feelings became a little bit more mixed. Being a leaked beta I tried my best to hold off judgment until something was released officially by RIM. The leaked beta was slow and required launching the app player then launching apps within it, not to mention app compatibility was fairly low, but it did show some promise.

Fast forward to DevCon 2011 this past week and the PlayBook OS 2.0 Developer Beta with Android support. Immediately the changes were noticeable. No longer did we need to launch the separate Android player, it was built right into the QNX OS and Android apps would display as regular icons on the home screen. The first thing I did was hit up the forums and start side loading BAR files that other users had converted from Android apps. Some apps such as Kindle worked great, and others, well... not so much.

RIM claims 70% of Android apps should work in the app player, but from my personal experience it seems to be more along the lines of 50%, possibly even less due to some features in certain apps failing to function. Looking over the unsupported Android features listed on the RIM developer site there is still a lot of work to be done on their end. Granted that is still a beta I was hoping for a little more. The positive side to this is that RIM has released a tool that can check an app and specifically pin point which functions/APIs an app is using that are not supported so that the developer can make adjustments and then package up a new release and submit it to AppWorld. During a Q&A session at DevCon RIM did note that while more APIs are on the list to be supported, some will intentionally not be supported, for "business reasons."

Once OS 2.0 is officially released to the public users will then be able to go into AppWorld and download Android apps that have been submitted by the developer and run them seamlessly just like any other app developed for the PlayBook, or at least that is what RIM would like us to think. The more time I spend with the Android player the more I see potential for confusion and a poor user experience. Lets take the User Interface (UI) for example. Currently the most popular choice for developing on the PlayBook is the Adobe Air platform, the screen shot below is a typical settings screen that many will be able to recognize right away. It uses built-in QNX controls (ie buttons, text boxes, sliders etc).

Android App

Now lets take a look at a typical Android apps settings screen: 

Android App

What I'm trying to illustrate here is the inconsistency that users will immediately notice due to UI differences. On top of this apps developed using the NDK using UI elements from QT or Cascades for example will look completely different as well. This creates a fragmented user experience which ultimately diminishes the overall experience of using the PlayBook. To give credit to where it is due Apple does a great job of ensuring a consistent experience for all apps in its store, they have strict user interface guidelines that apps must adhere to in order be be accepted into the App Store. RIM has taken some steps towards some uniformity in aspects such as bezel gestures, swiping down brings up the menu in Android apps, as well as Android notifications using the built in notification system, but is that really enough? Hopefully they have a few more tricks up their sleeves for the future.

Looking at the Android app player from a developer perspective has been another interesting topic of much debate in speaking with other developers. With RIM officially confirming at DevCon that the BlackBerry Java app player is now canceled and current BlackBerry apps will not work on the new BBX platform many developers, including myself, are looking towards the future and trying to decide which road to take for development. Once suggestion that has quite commonly been voiced is the "kill 2 birds with 1 stone" and develop now for Android and then package it up for BlackBerry afterward. This saves development time and costs and allows developers to reach 2 platforms at the same time. We asked RIM about their thoughts on this and their answer seemed somewhat contradictory. Their response was that it would not be as good as an app developed natively for BBX. That made me ask the question to myself "Then why are they even doing the Android player to begin with?," but I'll cover that a little later in this post. Now lets say I was a developer who has currently never supported the BlackBerry platform but I have an Android app, I can reach a whole new audience and maybe make a few extra bucks without much work, great! RIM is looking at this as an opportunity to attract new developers to the platform, their belief is that if Android developers start seeing success on BlackBerry that they will then create native BlackBerry apps. The other side of the coin is that instead of developers who would have originally thought about writing a native version of their apps for BBX will now just port over their Android apps and call it a day, which ultimately it's the consumer that loses out.

So in the end was the Android player the right decision for RIM? Only time will tell. My personal thoughts... This seems to be a short term solution for a long term problem. For years RIM rested on their laurels doing very little to woo new developers or even keep their existing ones happy and it finally caught up with them and the Android solution seems to be more about getting some quick positive publicity rather than solving the real problem. With the release of the PlayBook OS 2.0 we will see an immediate influx of new apps (quality aside), but the long-term problem of attracting developers to the BlackBerry platform is what RIM really should have been focusing on all along. As Kevin said in the DevCon Wrap Up podcast, if RIM could have gone back in time knowing what they know now they probably wouldn't have done the Android app player at all. What do you think? Let us know in the comments.