Android Security

NDK(Native Development Kit)란?

junnybottle 2023. 3. 12. 23:40

NDK(Native Development KIT)

 

 - C와 C++과 같은 네이티브 코드로 작성된 안드로이드 애플리케이션을 개발하기 위한 도구 모음

 - 안드로이드 애플리케이션에 C와 C++ 코드를 쉽게 통합할 수 있음 -> 더 높은 성능이 필요한 애플리케이션 개발 가능함.

 - SDK와 함께 제공되며, CMake와 같은 빌드 시스템과 함께 사용 가능함

 - 자바 이외의 네이티브 코드를 사용하기 위해 JNI 인터페이스가 존재해야 함

 

※ CMake : Gradle과 함께 작동하여 네이티브 라이브러리를 빌드하는 외부 빌드 도구이다.

※ LLDB : Android studio에서 네이티브 코드를 디버깅할 때 사용하는 디버거이다.

 

NDK가 필요한 경우

 

 - 기기의 성능을 최대한 활용하여 짧은 시연 시간을 구현해야 함

 - 게임 또는 시뮬레이션과 같은 컴퓨팅 집약적 애플리케이션을 실행해야 할 때

 - 본인 또는 개발자의 C/C++ 라이브러리를 재사용하는 경우