Have you read the official Android developers page regarding NDK ?
Quote:
Android NDK is an auxiliary tool for the Android SDK, which allows you to create critical parts of your applications in native code. It provides headers and libraries that allow you to create events, handle user input, use hardware sensors, access application resources, etc. when programming in C or C ++. If you write your own code, your applications are still packaged in an .apk file and they still work inside the virtual machine on the device. Basic Android application model is not a change.
Using native code does not automatically increase performance, but always increases application complexity. If you have not encountered any restrictions using the Android Framework API, you probably do not need an NDK.
, - , Java, NDK. NDK, , , C / ++.