마스터Q&A 안드로이드는 안드로이드 개발자들의 질문과 답변을 위한 지식 커뮤니티 사이트입니다. 안드로이드펍에서 운영하고 있습니다. [사용법, 운영진]

Nativeactivity에서 패키지명 구하기

0 추천
안녕하세요. Nativeactivity 를 이용하여 개발을 공부 중인데요.

Nativeactivity에서 내 패키지명을 구하는법을 궁금하여 질문을 남김니다.
여룽이 (4,750 포인트) 님이 2014년 3월 24일 질문

1개의 답변

0 추천
 
채택된 답변

-자답-

void android_main(struct android_app* state) {
struct engine engine;
 
jstring packageName;
 
JNIEnv* env = state->activity->env;
JavaVM* vm = state->activity->vm;
 
(*vm)->AttachCurrentThread(vm, &env, NULL );
 
jclass clazz = (*env)->GetObjectClass(env, state->activity->clazz);
jmethodID methodj = (*env)->GetMethodID(env, clazz, "getPackageName",
"()Ljava/lang/String;");
jstring jstr = (jstring) (*env)->CallObjectMethod(env,
state->activity->clazz, methodj);
 
if (jstr != NULL ) {
const char* str = (*env)->GetStringUTFChars(env, jstr, NULL );
packageName = str;
(*env)->ReleaseStringUTFChars(env, jstr, str);
}
 
(*vm)->DetachCurrentThread(vm);
 
LOGI("packageName : %s", packageName);
.
.
.

출처. 기억이...

여룽이 (4,750 포인트) 님이 2014년 3월 26일 답변
...