JNIの初期化グローバル変数(グローバルキャッシュ)
703 ワード
1、インタフェース、
2、ライブラリを動的にロードして初期化します.
3、ヘッダファイル
4,C++ファイル
//
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");
}