Notice
Recent Posts
Recent Comments
Link
투케이2K
262. (AndroidStudio/android/java) 최상위 액티비티 (현재 실행 중) 클래스 명 확인 방법 - ActivityManager 본문
Android
262. (AndroidStudio/android/java) 최상위 액티비티 (현재 실행 중) 클래스 명 확인 방법 - ActivityManager
투케이2K 2022. 2. 11. 19:08[개발 환경 설정]
개발 툴 : AndroidStudio
개발 언어 : java
[소스 코드]
// TODO [현재 사용중인 최상위 액티비티 명 확인]
public static String getNowUseActivity(Context mContext){
/**
* 참고 : [특정 클래스에서 본인 클래스명 확인 방법]
* getClass().getName()
* */
// [초기 리턴 결과 반환 변수 선언 실시]
String returnActivityName = "";
try {
ActivityManager manager = (ActivityManager) mContext.getSystemService(Context.ACTIVITY_SERVICE);
String className = "";
if (android.os.Build.VERSION.SDK_INT >= android.os.Build.VERSION_CODES.M) {
className = String.valueOf(manager.getAppTasks().get(0).getTaskInfo().topActivity.getClassName());
}
else {
List<ActivityManager.RunningTaskInfo> info = manager.getRunningTasks(1);
ComponentName componentName= info.get(0).topActivity;
className = componentName.getClassName();
}
Log.i("---","---");
Log.w("//===========//","================================================");
Log.i("","\n"+"[C_Util >> getNowUseActivity() :: 현재 사용 중인 최상위 액티비티 확인]");
Log.i("","\n"+"[className :: "+String.valueOf(className)+"]");
Log.w("//===========//","================================================");
Log.i("---","---");
// [리턴 반환 데이터 삽입 실시]
returnActivityName = className;
}
catch (Exception e){
//e.printStackTrace();
Log.i("---","---");
Log.e("//===========//","================================================");
Log.i("","\n"+"[C_Util >> getNowUseActivity() :: 현재 사용 중인 최상위 액티비티 확인]");
Log.i("","\n"+"[catch [에러] :: "+String.valueOf(e.getMessage())+"]");
Log.e("//===========//","================================================");
Log.i("---","---");
}
// [리턴 결과 반환 수행 실시]
return returnActivityName;
}
반응형
'Android' 카테고리의 다른 글
Comments