Sihyeon Kim
A simple yet classy theme for your Jekyll website or blog
-
JNI와 NDK (5) JNI 네이티브 함수 직접 등록하기
최종 수정일 : 2019-04-03 JNI 네이티브 함수 직접 등록하기 네이티브 메서드를 포함한 자바 프로그램을 실행할 때(4.2 예제 프로그램) System.loadLibrary() 메소드를 이용 -> 네이티브 메서드의 실제 구현이 포함된 C/C++ 라이브러리를 메모리 상에 로드 자바 가상 머신은 로드된 라이브러리의 함수 심볼을 검색 -> 자바에서 선언된 네이티브 메서드의 시그너처와 일치하는 JNI 네이티브 함수...
-
JNI와 NDK (4) C 프로그램에서 자바 클래스 실행하기
최종 수정일 : 2019-04-03 C 프로그램에서 자바 클래스 실행하기 C/C++로 구현된 메인 애플리케이션에서 자바 클래스를 실행하는 JNI 이용 방식 네이티브 애플리케이션에서 어떻게 자바 가상 머신 없이 자바 클래스 및 객체를 실행시킬 수 있는가? C/C++ 기반의 네이티브 애플리케이션에서 자바 클래스를 실행하기 위해 자바 가상 머신이 필요 -> 네이티브 애플리케이션이 자신의 메모리...
-
JNI와 NDK (3) JNI 함수 이용하기
최종 수정일 : 2019-04-03 JNI 함수 이용하기 C 코드인 JNI 네이티브 함수에서 자바 측 코드를 제어하는 방법 자바 객체 생성, 클래스의 정적 멤버 필드에 접근, 클래스의 정적 메서드 호출, 자바 객체의 멤버 필드에 접근, 자바 객체의 메서드 접근 JNI 함수를 활용하는 예제 프로그램 실행 환경 : Ubuntu 18.04, Vim 예제...
-
JNI와 NDK (2) JNI의 기본 원리
최종 수정일 : 2019-03-29 JNI 기본 원리 이해 - 예제 프로그램 예제 프로그램 : C 함수를 호출하는 간단한 자바 프로그램 예제 프로그램 개발 순서 (JNI를 이용해서 개발할 때는 대부분 예제 프로그램과 동일한 절차를 밟는다.) (1) 자바 코드 작성 (2) 자바 코드 컴파일 (3) C 헤더 파일 생성 (4) C 코드...
-
JNI와 NDK (1) 안드로이드와 JNI
최종 수정일 : 2019-03-29 안드로이드와 JNI 안드로이드 프레임워크 = C/C++ 기반 모듈 + 자바 기반 모듈 그리고 C/C++ 레이어와 자바 레이어의 모듈 대부분은 밀접하게 연관되어 있다. GPS를 활용하는 안드로이드 애플리케이션을 예로 보자. 안드로이드 애플리케이션은 GPS 정보를 얻기 위해 애플리케이션 프레임워크의 Location Manager가 제공하는 자바 API를 호출한다. 프레임워크 내부의 GPS 라이브러리를...