私のテストでは、C から Java を呼び出してlong
型引数を渡したいのですが、Java メソッドで型を使用するとlong
、渡された引数を正しく取得できません。常に 4294967297 です。int
、すべて問題ありません。何が問題なのか知っている人はいますか?
ジャワ:
public static void test(long num) {
Log.d("test", "xxxxxxxxxxx:%ld" + String.valueOf(num));
}
子:
void test_jni()
{
long num = 5000;
jclass theClass = (*currentJNIEnv)->FindClass(currentJNIEnv, "me/example/something/TestClass");
if (NULL != theClass) {
jmethodID mid = (*currentJNIEnv)->GetStaticMethodID(currentJNIEnv, theClass, "test", "(J)V");
if (mid == 0) return;
(*currentJNIEnv)->CallStaticVoidMethod(currentJNIEnv, theClass, mid, num);
}
}