请参阅以下链接。 link to download ndksample 1sample 2
第一步:先创建一个项目,然后在你的项目目录下创建一个名为jni的文件夹
第二步:在jni文件夹中创建addition.c文件并添加以下行。
#include "com_ndkadd_Addition.h"
JNIEXPORT jint JNICALL Java_com_ndkadd_Addition_messageFromNativeCode
(JNIEnv * env, jobject jObj,jint value1, jint value2)
{
return (value1 + value2);
}
第三步:在jni文件夹下创建Android.mk文件,代码如下
LOCAL_PATH := $(call my-dir)
include $(CLEAR_VARS)
LOCAL_MODULE := Addition
LOCAL_SRC_FILES := addition.c
include $(BUILD_SHARED_LIBRARY)
第 4 步: 从命令提示符导航到项目的 bin 文件夹。键入以下行并按 Enter。
javah -jni com.ndkadd.Addition
Step5:将创建的com_ndkadd_Addition.h文件移动到jni文件夹中。
第 6 步:现在从命令提示符编译本机代码,如下所示。
location_of_ndk\project_name> location_of_ndk\ndk-build
第7步:下面是您的活动和使用在您的libs文件夹中创建的.so文件的代码。
public class Addition extends Activity {
TextView txtHello;
static
{
System.loadLibrary("Addition");
}
public native int messageFromNativeCode(int v1,int v2);
/** Called when the activity is first created. */
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
TextView txtHello = new TextView(this);
txtHello.setText(""+messageFromNativeCode(5,5));
setContentView(txtHello);
}
}
注意:最好在你有SDK的地方有NDK,并且在android-ndk-r8文件夹中包含JNI的项目。