Android SDK (Android Software Development Kit) można uznać za obowiązkowy, o ile używasz Javy do tworzenia Androida. Obejmuje menedżera SDK i AVD Management, zarządzanie niektórymi wersjami rozwojowymi systemu Android oraz zarządzanie emulatorami. Może uruchamiać wyłącznie czyste programy Java, z którymi można używać emulatorów. NDK (Native Development Kit) jest podobny do SDK, ponieważ również jest zestawem deweloperskim. Wygodnie jest rozwijać C/C++ za pomocą niej. Posiada potężną kolekcję kompilacji. Strojenie C++ w Javie, C++ (interfejs jni), to kod strojenia javy dla C. Skompiluje kod C do dynamicznej biblioteki .SO, wywołuje go za pomocą kodu Java przez interfejs jni, dzięki czemu możemy bezpośrednio dodawać kod C do kodu Androida. Powody NDK: Dawno temu Android był dostępny tylko z SDK. Nie ma NDK. Oznacza to, że gdy deweloperzy Androida chcą korzystać z biblioteki firm trzecich C/C++ lub będą potrzebować C/C++, muszą użyć nieoficjalnej metody wywoływania C/C++ za pomocą JNI w Javie. To jak bawienie się w spryt i przechodzenie tylnymi drzwiami. Pojawienie się NDK oznacza, że metoda przywołana przez JNI stała się stała regularna, stała się oficjalna, i nie musisz już podążać tą drogą w przyszłości, a front będzie za tobą podążał. Jeśli chcesz obsługiwać bazę bezpośrednio w pamięci, musisz użyć C/C++ do obsługi adresu, ponieważ Java jest trochę trudna do tego zadania. Więc NDK jest obowiązkowe. Dla Androida SDK i NDK to dwa różne okresy konieczności używania tego samego języka.
|