我是JNI的新手,我想把三个整数传递给下面的函数
void pauseEffectJNI(unsigned int nSoundId)
{
// void pauseEffect(int)
JniMethodInfo methodInfo;
if (! getStaticMethodInfo(methodInfo, "pauseEffect", "(I)V"))
{
return ;
}
methodInfo.env->CallStaticVoidMethod(methodInfo.classID, methodInfo.methodID, (int)nSoundId);
methodInfo.env->DeleteLocalRef(methodInfo.classID);
}
如果我错了,请纠正我
这一行会有什么if(!getStaticMethodInfo(methodInfo,"pauseEffect","(I)V")
(I;I;I)V或仅(III)V
如果我的函数是void pauseEffectJNI(无符号int nSoundId,无符号int number1,无符号整数2)??
基本上,我想知道如果我想通过一个以上的整数
谢谢你的帮助。。。这是我做的函数。。。如果我错了,请纠正我
void pauseEffectJNI(unsigned int nSoundId , unsigned int number)
{
// void pauseEffect(int)
JniMethodInfo methodInfo;
if (! getStaticMethodInfo(methodInfo, "pauseEffect", "(III)V"))
{
return ;
}
methodInfo.env->CallStaticVoidMethod(methodInfo.classID, methodInfo.methodID, (int)nSoundId,(int) number);
methodInfo.env->DeleteLocalRef(methodInfo.classID);
}
不要试图手动计算JNI方法签名,因为'javap-s'会以100%的可靠性告诉您正确的答案。使用工具。