Forgot your password?

The BlackBerry Playbook Native SDK (NDK): What Is It Good For? (A Developer’s Perspective)

Native SDK

Intro: Chris Balavessov is the developer behind the popular BlackBerry personal organization app Viira and its MS Outlook companion the Viira Outlook Suite.

On Thursday I tuned in to RIM’s Webcast on the Playbook’s Native SDK (NDK). As a BlackBerry developer my goal was to get a feel for the various ways you can make apps for the Playbook and also get a sense for the kinds of apps that are possible on it. Here is what I found.

Let’s start with the positive. In addition to all the QNX goodness like file access, networking, sockets and what have you, the NDK will provide access to all current BlackBerry Tables OS stuff (eg. SQlite, OpenGL, etc) as well as the BlackBerry platform services like Payment and Advertising SDK. Developers will also have access to the BBM social platform at some point so you can do cool things like BBM with your friends while playing Quake 3 in multiplayer mode or have a games with additional levels that get unlocked through an in-app purchase. Very cool stuff. The caveat here is that while the intention is to provide access to the BBM social platform soon it doesn’t sound like it will be available in the first release but please stay tuned.


The NDK will be available first in a public beta sometime this summer and then in a ‘gold’ release during DevCon 2011 in the fall. RIM promised the gold release to be available on both Mac and Linux in addition to Windows. The tooling will have live debugging and profiling capabilities built in and will be available free of charge.

So what kinds of apps can you make with the NDK?

For those of you looking to port your native BlackBerry Java apps and code to the PB, the NDK is not the way to go. That’s because in this case by ‘native’ RIM means C/C++ so unless you have a magic compiler that takes your J2ME/CLDC Java code and spits out C (POSIX-compliant at that) you should look elsewhere. What I found very odd is that the NDK does not provide a UI toolkit and the RIM rep said they have no plans of making one available any time soon. Hmmm. So unless you are comfortable writing your UI from the pixel up or in OpenGL, or have the time on your hands to port something like the popular UI framework Qt to the Playbook then the NDK is probably not for you. From the looks of it, RIM’s approach on this one is to leave things to developers at first and see what comes out of it (my prediction: not a whole lot of native apps that are not games, at least initially).

My take is that the NDK is intended for game makers and the likes of EA trying to port their games over to the PB (which would be awesome imo). Or for someone like Netflix or Samsung who want to stream all kinds of media over Flash or bring over their own native C codecs. Or a large medical software company who already has a ton of legacy *nix C/C++ products and its own proprietary UI libraries. But if you are a making the everyday kind of business-centric applications, you know like the ones that have a UI and don’t require you to port code libraries the size of Texas just to say “Hello World”, then there really isn’t a whole lot to be excited about here.

8 total comments on this postSubmit your comment!
  1. Thanks for posting this review. I’ve been quite curious.

    I really hope someone ports something like the embedded version of Qt, since this may wind up being the only way to actually write serious applications for the PB. But whatever UI toolkit(s) get ported, I’m mainly hoping for an open-source approach.

    If people pull the same shtick they do on the phones, and keep all their common library code as internal and proprietary, then we won’t see any serious push for quality 3rd party native apps. (Beyond the likes of EA and a couple other big players.)

  2. An embedded version of Qt that has been ported to the PB would definitely be a great start. I think that ultimately RIM needs to step in and take over the development of the UI toolkit though. Otherwise we may end up with Playbook UI fragmentation with multiple versions of Qt floating around. And even worse, if everyone ends up bundling their version of Qt in their executable then the PB’s memory will be eaten up by multiple copies of Qt. Not good.

    RIM would also be in the best position to implement and support PB-specific things like orientation, gestures and other things like that to keep it comforming to the look and feel of the rest of the PB.

  3. i think for the ui library rim will use tat cascades. so for that part it seems to be no problem

  4. it is also possible to write c++ extensions for air sdk – allowing people to create their UIs in AIR, but the back end in native code. This will be the approach I take for the PB port of BBSSH

  5. I thought I get to enroll a C/C++ course again after 10 years but it seems like I should give up and get back to Web Design/Java anyway. 😀

7 total pingbacks on this post

BlackBerry© is a registered Trademark of BlackBerry Limited. BerryReview is in no way affiliated with BlackBerry Limited though sometimes their lawyers send us love letters...

Copyright © 2007-‘2018’ BerryReview LLC