안녕하세요.

제가 JNI통해서 현재 폰의 상태(벨, 진동, 무음)을 알아내려고 하는데,

다음과 같이 하니까 mode값이 상태가 그대로인데도 계속 바뀌더라구요....

게다가 0, 1, 2 이런식으로 나와야 하는데, 엉뚱한 값이 나오구 ㅠㅠ

혹시 아니는분 있으시면 답변 좀 부탁드립니다. ^^;

 jclass cls = (jclass)env->NewGlobalRef(env->FindClass("android/app/Activity"));
 jmethodID getSystemServiceMID = (jmethodID)env->GetMethodID(cls, "getSystemService", "(Ljava/lang/String;)Ljava/lang/Object;");
 jobject AudioManagerObj = env->CallObjectMethod(cls, getSystemServiceMID, "audio");
 jclass cls2 = (jclass)env->FindClass("android/media/AudioManager");
 jmethodID getRingerModeMID = (jmethodID)env->GetMethodID(cls2, "getRingerMode", "()I");
 int mode = env->CallIntMethod(cls2, getRingerModeMID);