xiefeng272 2018-01-08 03:45 采纳率: 66.7%
浏览 1517
已采纳

java通过jni接口向C++中传值问题

JNI WARNING: instance jfieldID 0x62bb4ff0 not valid for class Ljava/lang/Class; (GetIntField)

in Lcom/xxxx/test/MyActivity;.cmdHUProtoclVersion:(Lcom/xxxx/test/MyActivity$MyVersion;)I (GetIntField)
出现如上的warnning,数值设置不正确,该如何解决?

  • 写回答

3条回答 默认 最新

  • csulizhang 2018-01-08 06:04
    关注

    你这样找类名称是找不到的。要找到类的具体路径,从jni所在的那一层级开始往下目录查找,应该是这样找类,
    jclass objresults = env->FindClass("com/XXXX/XXXX/MyActivity/MyVersion");
    然后jfieldID my_majorversion = env->GetFieldID(objresults,"majorVersion","I");

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
查看更多回答(2条)

报告相同问题?