Skip to content

Instantly share code, notes, and snippets.

@MythodeaLoL
Forked from MaximAlien/ClassName
Created August 9, 2016 16:24
Show Gist options
  • Save MythodeaLoL/ef103d9724d903657ca298dd32396344 to your computer and use it in GitHub Desktop.
Save MythodeaLoL/ef103d9724d903657ca298dd32396344 to your computer and use it in GitHub Desktop.
[Android] [JNI] Method to get class name as std::string
static std::string getClassName(JNIEnv *env, jobject entity, jclass clazz)
{
jmethodID mid = env->GetMethodID(clazz, "getClass", "()Ljava/lang/Class;");
jobject clsObj = env->CallObjectMethod(entity, mid);
jclass clazzz = env->GetObjectClass(clsObj);
mid = env->GetMethodID(clazzz, "getName", "()Ljava/lang/String;");
jstring strObj = (jstring)env->CallObjectMethod(clsObj, mid);
const char* str = env->GetStringUTFChars(strObj, NULL);
std::string res(str);
env->ReleaseStringUTFChars(strObj, str);
return res;
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment