JNI里调用java代码

    科技2025-03-20  26

    1.获得类class

    jclass classT = env->FindClass("com/example/jnidemo/JNITest");

    2.获得MethodID,第二个参数是待调用的方法名,最后一个是对应的签名格式(L开头类型注意后面加上分号";"结尾)

    jmethodID methodId2 = env->GetMethodID(classT,"sss","()Ljava/lang/String;");

    3.获得object

    jobject dd = env->AllocObject(classT);

    4.调用对于方法,CallxxxMethod就返回XXX类型

    //由于无string类型,这里要用object类型,返回值显示转化一下 jstring str = (jstring)env->CallObjectMethod(dd,methodId2); //如果方法有参数,后面加上即可。 jmethodID methodId3 = env->GetMethodID(classT,"kkk", "(I)I"); jint kk = env->CallIntMethod(dd,methodId3,6);
    Processed: 0.009, SQL: 8