1,接口,
// 初始化全局变量 public native static void initIds();
2,动态加载库进行初始化。
static { System.loadLibrary("native-lib"); initIds(); }
3,头文件
JNIEXPORT void JNICALL Java_com_shaoshuaima_test_JniForC_initIds(JNIEnv *, jclass);
4,C++文件
// 初始化全局变量,动态库加载完成之后,立刻进行缓存。 jfieldID key_fid; jmethodID random_mid; extern "C" JNIEXPORT void JNICALL Java_com_XXX_XXX_XXX_initIds(JNIEnv * env, jclass jcls){ key_fid = env->GetFieldID(jcls,"key","Ljava/lang/String;"); random_mid = env->GetMethodID(jcls,"getRandomInt","(I)I"); }