如何处理JNI中的空返回

时间:2018-08-22 04:30:08

标签: java android java-native-interface

我有一个吸气剂方法getEntityGUID,有时会以null的形式返回。如果返回值为空,则在下面调用此方法时,JNI将失败:

/** Longs Class **/

jclass clsLong = (env)->FindClass("java/lang/Long");

jmethodID longGetLongValue = (env)->GetMethodID(clsLong, "longValue", "()J");

/** START GET ENTITY GUID **/

jmethodID getEntityGUID_MethodID = env->GetMethodID(EntityAnnotationClazz,
    "getEntityGUID",
    "()Ljava/lang/Long;");

jobject _EntityGUID = env->CallObjectMethod(jobject,
    get_revEntityGUID_MethodID);

long EntityGUID = (env)->CallLongMethod(_EntityGUID, longGetLongValue);  

如何编写我的代码,以便在返回为null时正确处理此代码。

谢谢大家。

0 个答案:

没有答案