Java JNI应用程序状态

Java JNI应用程序状态,java,c++,java-native-interface,android-ndk,Java,C++,Java Native Interface,Android Ndk,通过JNI访问方法时如何保持状态?在下面的示例中,我的Java代码正在调用本机方法drawFromJni,我的本机类在调用之间会被持久化吗 的问题。 extern "C" { JNIEXPORT void JNICALL Java_com_jnitest_SurfaceRenderer_drawFromJni(JNIEnv * env, jobject obj); }; myNativeClass _nc; JNIEXPORT void JNICALL Java_com_jnitest_Su

通过JNI访问方法时如何保持状态?在下面的示例中,我的Java代码正在调用本机方法drawFromJni,我的本机类在调用之间会被持久化吗

<如果NDK有更好的本地调试工具,这很容易找到,但是我确实有NDK和C++ +/P>的问题。
extern "C" {
 JNIEXPORT void JNICALL Java_com_jnitest_SurfaceRenderer_drawFromJni(JNIEnv * env, jobject obj);
};

myNativeClass _nc;
JNIEXPORT void JNICALL Java_com_jnitest_SurfaceRenderer_drawFromJni(JNIEnv *  env)
{
     _nc.draw();
}

JNI函数的实现遵循您正在实现的语言的范围规则。如果您将_nc声明为一个全局变量(正如您在示例中所做的),它将在整个应用程序中共享