jmethodID JNIEnv::GetStaticMethodID(jclass Classe, char *NomMethode, char *Signature);
Il s'agit d'une méthode statique i.e. de classe.
La signature est composée du chemin d'accès à la classe, chaque niveau étant un paquet, le séparateur de répertoire étant le caractère division /. Pour les types natifs, la signature est la suivante :
Type natif | Signature |
boolean | Z |
byte | B |
char | C |
double | D |
float | F |
long | J |
int/TD> | I |
short | S |
void | V |
byte [] | [B |
Méthode int P(boolean A, String B) | (ZLjava/lang/String;)I |
#include <jni.h>
JNIEnv *pEnv;
jclass pMaClasse;
jmethodID IdentifiantMethode;
jint Parametre;
...
IdentifiantMethode=pEnv->GetStaticMethodId(pMaClasse, "MaMethodeVoid", "(I)V");
if (!IdentifiantMethode)
{
...
}
...
pEnv->CallVoidMethod(pMaClasse, IdentifiantMethode, Parametre);
...