这里实现 两个数相加作为列子
1:新建项目,把jni文件复制到项目中。
2:编写本地方法(native) 方法,在静态代码快中
//本地方法
public native int sum(int num1, int num2);
//静态代码快
static{
System.loadLibrary("test");;
}
3:生成头文件:
在dos命令中:cd 到工程目录==》bin ==>classes == > javah -jni cn.android.app.类名(将自动生成文件)
4:将头文件拖到jni目录中,把头文件中的方法复制到c文件中.把前缀 "JNIEXPORT" 删掉,同时补齐参数,补上花括号(实现代码)
将.c 文件的名字改为.h一样的名字
5:在Android.mk文件中
--- LOCAL_MODULE="test";这里是静态代码块中一样的名字
---
---- LOCAL_SRC_FILES= 包名(这里要要用下划线连接 )+类名.c
(在.h头文件导入的时候要用下划线)
6:编译:
用Sygwin工具编译生成libs文件 so动态连接库
然后运行。 ok 完成。