android ndk编程

JAVAH生成的.h文件的正确方式:

运行make project,然后进入E:\ androidproject \ apptry \ app \ build \ intermediates \ javac \ debug \ compileDebugJavaWithJavac \ classes目录,执行javah -jni com.doit.apptry.Jni命令,会看到如下:

android ndk编程

1.新建Jniutil类:

package com.doit.ndkandroid;

public class JniUtil {
    static {
        //jniutil这个参数,可根据需要任意修改
        System.loadLibrary("jniutil");
    }

    //java调C/C++中的方法都需要用native声明且方法名必须和C/C++的方法名一样
    public native String test();
}

 2:点击为中的构建 - “makeproject:

3.找到如图路径:

android ndk编程

终端输入:

cd app src main

然后输入:

javah -d jni -classpath E:\ androidproject \ ndkandroid \ app \ build \ intermediates \ javac \ debug \ compileDebugJavaWithJavac \ classes com.doit.ndkandroid.JniUtil
即可看到:

android ndk编程

创建空文件:util.c,和jniutil.c,

jniutil.c中的内容为:

#include <jni.h>
#include "com_doit_apptry_JniUtil.h"

JNIEXPORT jstring JNICALL Java_com_othershe_jnitest_JniUtil_test
        (JNIEnv *env, jobject obj) {
    return (*env)->NewStringUTF(env, "jni调用成功");
}