Програмиране в "C" за Android
Android SDK
Google предоставя стандартен набор от инструменти, които позволяват на програмистите да създават приложения за платформата за Android под формата на техния екип за разработка на софтуер или комплект за разработване на софтуер (SDK). Това включва симулатор на системната система за Android за тестови проекти и инструменти за опаковане, за да създаде файл, който може да работи с Android от изходния код на проекта. Комплектът за разработване на софтуер (SDK) включва и библиотеки, които позволяват на приложенията, написани на Java, да взаимодействат с разширените функции на операционната система Android.
Android NDK
Разработчиците, които искат да създават приложения или компоненти на приложения на програмния език C, могат да изтеглят родния екип за разработка от Google или NDK. Това е колекция от библиотеки, подобни на тези в SDK. Те обаче са в програмния език C вместо Java. Разработчиците могат да използват тези библиотеки, за да разработят за Android в C по същия начин, по който библиотеките на SDK позволяват развитието на Java.
Използване на NDK
НДК не функционира като независим екип за развитие. Вместо това това е разширение на комплекта за разработване на софтуер (SDK). Разработчиците трябва да инсталират комплекта за разработване на софтуер (SDK) като платформа, в която да изтеглят, използват и актуализират други компоненти за разработка. Те включват NDK. Разработчиците все още използват инструментите на комплекта за разработване на софтуер (SDK), за да създадат пакетите ".apk", които Android изпълнява като приложения, симулаторът на SDK да тества приложенията и инструментите на комплекта за разработване на софтуер (SDK), за да прехвърли пакетите .apk на истинско устройство с Android.
C или Java
Езикът на Java работи чрез компилиране на изходния код в междинна форма, наречена bytecode, чиито JVMs се превеждат в кода на машината, която устройството действително работи. В този процес JVM автоматично ще оптимизира кода на машината, който произвежда. Това спестява времето на програмиста, за да се опита да оптимизира кода. Програмистите, работещи на езика C, обаче контролират директно как ще изглежда компилираният код на машината. Това позволява на разработчиците на приложения, които искат да упражнят това подробно ниво на контрол над своя код, за да направят това. Освен това позволява на разработчиците, които са написали голям брой кодове за проект C, да ги изпратят бързо на Android.