美文网首页andriod
Android NDK 获取域和域id(访问Java代码变量)

Android NDK 获取域和域id(访问Java代码变量)

作者: 60916fc63567 | 来源:发表于2016-07-07 13:44 被阅读68次

    话不多说,直接上代码

    NIEXPORT jstring JNICALL Java_androids_ndk_com_myapplication_Main3Activity_executeJavaFiled(JNIEnv *env,jobject instance){

    jclass clazz;

    //用对象引用获得类

    clazz = env ->GetObjectClass(instance);

    //获取实例域的域ID

    jfieldID instanceFieldId;

    instanceFieldId = env ->GetFieldID(clazz,"instanceField","Ljava/lang/String;");

    //获取静态域的域ID

    jfieldID staticFieldId;

    staticFieldId = env ->GetStaticFieldID(clazz,"staticField","Ljava/lang/String");

    //获取实例域

    jstring instanceField;

    instanceField = (jstring)env ->GetObjectField(instance,instanceFieldId);

    //获取静态域

    jstring staticField;

    staticField = (jstring)env ->GetStaticObjectField(clazz,staticFieldId);

    returninstanceField;

    }

    代码片段截图:

    相关文章

      网友评论

        本文标题:Android NDK 获取域和域id(访问Java代码变量)

        本文链接:https://www.haomeiwen.com/subject/eglljttx.html