관리 메뉴

드럼치는 프로그래머

[JNI/NDK] NDK로 제작할 때 C와 C++의 차이 본문

★─Programing/☆─JNI | NDK

[JNI/NDK] NDK로 제작할 때 C와 C++의 차이

드럼치는한동이 2013. 6. 14. 10:27

컴파일 될 코드

■ C로 제작할 때
#include <string.h>
#include <jni.h>

jstring
Java_com_example_hellojni_HelloJni_stringFromJNI( JNIEnv* env, jobject thiz )
{
 return (*env)->NewStringUTF(env, "Hello from JNI !");
}

■ C++로 제작할 때
#include <string.h>
#include <jni.h>

extern "C" {

JNIEXPORT jstring JNICALL 
Java_com_example_hellojni_HelloJni_stringFromJNI( JNIEnv* env, jobject thiz )
{
 return env->NewStringUTF("Hello, NDK!"); 
}

}


mk 파일
■ C로 제작할 때
LOCAL_PATH := $(call my-dir)
include $(CLEAR_VARS)
LOCAL_MODULE    := hello-jni
LOCAL_SRC_FILES := hello-jni.c
include $(BUILD_SHARED_LIBRARY)

■ C++로 제작할 때
LOCAL_PATH := $(call my-dir)
include $(CLEAR_VARS) 
LOCAL_DEFAULT_CPP_EXTENSION := cpp    
LOCAL_MODULE    := hello-jni  
LOCAL_SRC_FILES := hello-jni.cpp  
include $(BUILD_SHARED_LIBRARY)


[출처] [Android] NDK로 제작할 때 C와++의 차이|작성자 후덜덜

 

[출처] http://blog.naver.com/PostView.nhn?blogId=rabdol99&logNo=50109743209

Comments