Android SDK (Android Software Development Kit) možno považovať za nevyhnutnosť, pokiaľ na vývoj Androidu použijete Javu. Zahŕňa SDK Manager a AVD Management, správu niektorých vývojových verzií systému Android a správu emulátorov. Dokáže spustiť iba čisté Java programy, s ktorými je možné používať emulátory. NDK (Native Development Kit) je podobný SDK v tom, že je tiež vývojovým balíkom. Je pohodlné vyvíjať C/C++ pomocou neho. Má silnú zbierku kompilácií. Java ladenie C, C++ (jni rozhranie), je java ladiaci kód pre C. Skompiluje C kód do .SO dynamickej knižnice, volá ho pomocou java kódu cez jni rozhranie, čím môžeme priamo pridávať C kód do Android kódu. Dôvody NDK: Pred dávnymi časmi bol Android dostupný iba so SDK. Neexistuje žiadne NDK. To znamená, že keď Android vývojári chcú použiť knižnicu tretích strán C/C++ alebo potrebujú C/C++, musia použiť neoficiálnu metódu volania C/C++ pomocou JNI v Jave. Je to ako hrať na múdrosť a ísť zadnými dverami. Vznik NDK znamená, že metóda nazývaná JNI sa stala pravidelnou a oficiálnou, a už nemusíš ísť cestou v budúcnosti, a front ťa bude nasledovať. Ak chcete prevádzkovať podklad priamo na ovládanie pamäte, musíte použiť C/C++ na ovládanie adresy, pretože Java je na to trochu náročná. Takže NDK je nevyhnutnosť. Pre Android sú SDK a NDK dve rôzne obdobia potreby pre ten istý jazyk.
|