1.首先在eclipse安装ADT插件:安装ADT插件
2.将JDK下的Bin添加进系统的Path环境变量:(为了使用javah命令,自动将JAVA文件转换成.H头文件)
3.打开eclipse,新建一个Android工程:
【右键工程】->【Android Tools】->【Add Native Support】->写上库的名称(这里是HllloJni)
注意:遇到找不到Jni.h的问题参考:找不到Jni.h问题解决方法
此时工程下会多了个Jni目录:
4.先新建一个java类,在里面用JAVA写一些方法:
package com.example.hlllo;
public class Chello {
public native String getStr();//加上native后可以使用C++的习惯
public static native int getNum();
//首次执行调用这个库
static{
System.loadLibrary("HllloJni");
}
}
5.打开CMD,CD到【工程目录】->【bin】->【classes】里面,执行javah -jni com.example.hlllo.Chello
生成一个头文件:
将它拖进工程的Jni中:
6.编辑CPP文件,实现想要的功能:
#include <jni.h>
#include "com_example_hlllo_Chello.h"
//获取字符串
jstring Java_com_example_hlllo_Chello_getStr(JNIEnv *env, jobject thiz){
return env->NewStringUTF("Hello Java");
}
//获取数字
jint Java_com_example_hlllo_Chello_getNum(JNIEnv *, jclass clazz){
return 8;
}
7.最后在MainActivity调用CPP中的方法:
运行:(在控制台输出一个字符串hello java)