Question

I am a mobile application developer and have pretty decent experience in Windows Phone application development and Android. Now, I want to start developing for Blackberry also.

Going through the offcial BlackBerry website, I came to know it is possible to port my existing Android applications to Blackberry 10 and BlackBerry Playbook by using the various Runtime for Android apps tools.

My question : What is preferable? Should I develop applications for Blackberry using the standard Blackberry Java SDK or is it okay to make my applications on Android and then just repackage them for BlackBerry-10 and BlackBerry Playbook? I am aware of the fact that some of the Android applications might not be compatible with BlackBerry, such as pacakges that rely on Google Maps or Android's Text-to-Speech Engine, but right now I am not planning to use them in my apps for Blackberry.

Given my knowledge in programming, I guess I have three options :

  1. Build using the C/C++ NDK
  2. Build Applications on Android and then later repackage them for BlackBerry
  3. Build using BlackBerry Java (Mobile Edition)

Which is the most preferable one and convenient one ?

I am very comfortable in Android but have no knowledge in J2ME. Hence, I thought that instead of learning to make my way around the UI in J2ME, I would just do it in Android and repackage it for Blackberry. Would that be the correct way of doing it ?

Was it helpful?

Solution

You've mixed up the legacy BlackBerry Java platform with the newer QNX based BlackBerry Playbook (tablet) and Blackberry 10 (phone) platforms. You first have to decide which platform you are actually targeting. Typically, "BlackBerry" without any qualifiers means the BlackBerry Java platform, which is the platform with 80 million users right now. BlackBerry 10 is still in development, so has no users, and BlackBerry Playbook has substantially fewer users than the BlackBerry Java platform.

If you want to target those 80 million BlackBerry users, then there is no real decision here - only Java-ME apps will run on that platform. There is no Runtime for Android on the legacy BlackBerry platform.

If you are looking to the future, and want to target BlackBerry 10 or BlackBerry Playbook, then yes, the Runtime for Android is a good choice for you, if you already have an Android app written.

OTHER TIPS

You mention JavaME but also mention repackaging an Android app. JavaME corresponds to the java-based BlackBerry platforms; the current version is BlackBerry 7.1. The Android player is not based on JavaME but rather follows the Android versions and is only available for the new BlackBerry platforms, including BlackBerry PlayBook OS (2.1 is latest) and BlackBerry 10, currently on beta 3 (note that RIM has already announced it will provide a port of BlackBerry 10 at some point).

Many Android applications will just need repackaging, not even recompilation. Repackage and submit to the PlayBook/BlackBerry 10 store.

See https://developer.blackberry.com/android/ for more details.

Native Blackberry development means:

1) Java ME for OS 7 and lower - huge customer base 2) QNX for Playbook - smaller customer base, will be replaced by BB10 in Q2/2013 3) Cascades/Qt/QML for BB10 - difficult to estimate how big user base will be

My personal feelings from Blackberry 10 development:

I'm quite skilled Android developer (my apps in total have more than 6 millions downloads from Play Store) and I spent some time with developing BB10 app with Cascades/Qt/C++ and I must say that it is sometimes even easier than Android development and learning curve is steep.

Especially QML is much more easy to use and intuitive than Android's layouts. While creating app for BB10 you can mix QML/Javascript code with C/C++ (theoretically it is even possible to avoid C/C++ and use QML/Javascript only).

Worst thing for me was C++ as this language (comparing to Java) has more features (multiple ways how to use pointers, multiple ways how to create object instance, overridden operators and preprocessor macros) so it is easier to get lost than in Java. But it was still doable nothing crucial.

Regarding porting Android apps: I don't think it is good idea. They look ugly on BB10/Playbook so I don't think they will give you success.

Good to hear that you are comfortable in coding with Android. And would congrats you that Blackberry has opened a path for you to deploy your application in blackberry world.

So,clear your mind leaving few thing your application will be accepted by Blackberry users.

Since you are coding for android, it means you are comfortable with java.And you will be tooo comfortable with J2ME.

Its almost same.

Now QNX is a little different but not that different that you won't understand.

And above all you know c/c++ .
Welcome to Blackberry world ... don't think so much ...give a try

Licensed under: CC-BY-SA with attribution
Not affiliated with StackOverflow
scroll top