//delete free if(obj!=NULL){ LOGE("Obj is not null"); if(cmdclass!=NULL){ free(cmdclass); cmdclass=NULL; } LOGE("cmdclass Obj is not null"); if(securitycmdclass!=NULL){ free(securitycmdclass); securitycmdclass =NULL; } LOGE("securitycmdclass Obj is not null"); } }
void getObjectParamString(JNIEnv *env, jobject obj, char *name, char **value){ jclass cls = (*env)->GetObjectClass(env,obj); jmethodID method = (*env)->GetMethodID(env,cls,name,"()Ljava/lang/String;"); jstring a = (*env)->CallObjectMethod(env,obj,method); if(a!=NULL) { const char *str = (*env)->GetStringUTFChars(env, a, 0); size_t len = strlen(str); *value = malloc(sizeof(char) * len + 1); memset(*value, 0, sizeof(char) * len + 1); memcpy(*value, str, len); LOGD("11\n"); (*env)->ReleaseStringUTFChars(env, a, str); LOGD("12\n"); }else{ *value = NULL; } LOGD("13");