jni c调用Java代码

https://blog.csdn.net/qq_36523667/article/details/80093935

这一篇包含了配置以及java调用c

本文建立上文基础上c调用java


c代码替换如下

/* DO NOT EDIT THIS FILE - it is machine generated */
#include <jni.h>
/* Header for class com_example_demo_Utils */

#ifndef _Included_com_example_demo_Utils
#define _Included_com_example_demo_Utils
#ifdef __cplusplus
extern "C" {
#endif
/*
 * Class:     com_example_demo_Utils
 * Method:    get
 * Signature: ()Ljava/lang/String;
 */
JNIEXPORT jstring JNICALL Java_com_example_demo_Utils_get
  (JNIEnv *env, jobject thiz) {
    jclass dpclazz = (*env)->FindClass(env, "com/example/demo/GoGo");
    jmethodID methodID = (*env)->GetStaticMethodID(env, dpclazz,"get", "()Ljava/lang/String;");
    jstring result = (*env)->CallStaticObjectMethod(env,dpclazz,methodID);
    return result;
}

#ifdef __cplusplus
}
#endif
#endif

原来return的是

(*env)->NewStringUTF(env, "666")


运行结果

jni c调用Java代码