Google has updated the Android NDK (Native Development Kit) to Revision 5, and Googler Chris Pruett takes some time to explain the awesomeness that comes with. The NDK allows developers to use native code to build applications, and then interacts with the Android Gingerbread SDK (Software Development Kit) to create an application that will run in Android. Chris has a great chart that shows how the amount of awesome contained in the NDK directly relates to the amount of awesome in the apps you can build with it, but I think we can put it in a bit clearer terms. And it still will be awesome. Follow the break and have a look. [Android Developers blog]
We've all heard of a little thing called the Unreal Engine. It's a game engine -- meaning it controls things like game physics, graphics libraries, and the rest of the "guts" of a complex computer video game. It's written with very complex commands and algorithms that just aren't possible or practical to code in Java and run under Android's Dalvik machine. The NDK allows developers to use the Unreal Engine, almost as written, to build intense 3D games like Dungeon Defenders, just like the NDK for WebOS brought 3D gaming to a new level on the Pre. Now compare games like Jewellust (a great game that I've spent hours and hours playing) to Dungeon Defenders. That's what a robust NDK brings to the table. While these apps will never replace some of our old favorites, it's clear they are in a different league.
It is important to realize that simply using the NDK doesn't always increase the performance of an application, but it does always increase the size and complexity, so the move to fast internal storage, new file systems, and better processors is also allowing these great apps to come around. With the r5 NDK and Gingerbread SDK, Android is entering a new era in the app department, and I'm sure developers and hardware makers are seeing the potential dollar signs. Prepare yourselves!