[FIXED] What is the difference between Android SDK and NDK?


I am about to start android application development.

From What is NDK? documentation I was not able to extract the following information:

Does using NDK actually introduce new features comparing to SDK?

I am interested in this because using NDK greatly increases application complexity, so if I am not interested in performance increase, are there other reasons to go for NDK?

What I mean is for example:

-restart phone

  • (I know neither SDK nor NDK allows this, I just use it as an example of what I mean) let’s say java SDK does not allow this, but some native libraries do – then the answer to my question would be yes, NDK does add some functionality

Thanks in advance for any helpful answers.


The only reasons to use the NDK as far as I know is to squeeze extra performance out of your application and get closer to the bare metal. If you don’t need to do either of these things, you should probably stay away from the NDK.

Also note that the Dalvik VM already has some pretty awesome performance and comparatively simpler.

Answered By – Kurtis Nusbaum

Answer Checked By – Candace Johnson (Easybugfix Volunteer)

Leave a Reply

(*) Required, Your email will not be published