Eclipse下配置ndk 编译c文件
1.新建android 工程
2.新建jni文件夹 编写c文件 和Android.mk文件
编写一个helloWorld
注意: JNIEXPORT jstring JNICALL Java_com_sanya_testjni_hello2C 的书写 Java_包名_类名_方法名
1 2 3 4 5 6 7 8 | #include <stdio.h> #include <jni.h> #include <jni.h> JNIEXPORT jstring JNICALL Java_com_sanya_testjni_MainActivity_hello2C (JNIEnv * env, jobject obj){ return (*env)->NewStringUTF(env, "hello from c" ); } |
编写Android.mk 文件
注意:LOCAL_MODULE := hello 取一个hello的名字
LOCAL_SRC_FILES := hello.c 是你c代码文件名称
1 2 3 4 5 6 7 8 | LOCAL_PATH := $(call my-dir) include $(CLEAR_VARS) LOCAL_MODULE := hello LOCAL_SRC_FILES := hello.c include $(BUILD_SHARED_LIBRARY) |
3.配置
在你的工程中右键Properites
1.选择Builders New
Location 选择你NDK文件下的ndk-build.cmd
Working Directory 选择你的工程
2.
3. Specify Resources 选择你的工程
4.Apply F5 刷新 或者动下C文件 保存 即可编译c文件
java 代码:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 | static { System.loadLibrary( "hello" ); } public native String hello2C(); @Override protected void onCreate(Bundle savedInstanceState) { super .onCreate(savedInstanceState); setContentView(R.layout.activity_main); } public void click(View view){ Toast.makeText(getApplicationContext(), hello2C(), 1 ).show(); } |