모바일/Android

getInfo from settings

늘근이 2016. 12. 29. 08:11

Runnable ㄱ ㄱ

componentname == null || !CommonUtil.equals(componentname.getClassName(), "com.android.settingsaccessibility.SettingsAccessibilityActivity") && !CommonUtil.equals(componentname.getClassName(), "com.android.settings.Settings$AccessibilitySettingsActivity")


public static ComponentName getTopActivity(Context context)

    {

        context = ((ActivityManager)context.getSystemService("activity")).getRunningTasks(1);

        if (context == null || context.isEmpty())

        {

            return null;

        }

        context = (android.app.ActivityManager.RunningTaskInfo)context.get(0);

        if (context == null)

        {

            return null;

        } else

        {

            return ((android.app.ActivityManager.RunningTaskInfo) (context)).topActivity;

        }

    }


//현재 실행중인 프로세스

ActivityManager actMng = (ActivityManager)getApplicationContext().getSystemService(Context.ACTIVITY_SERVICE);

List<RunningAppProcessInfo> list = actMng.getRunningAppProcesses();

String packageName = "";

for(RunningAppProcessInfo rap : list)

{

System.out.println("packageName = "+packageName+", importance = "+rap.importance );   

    if(rap.importance == rap.IMPORTANCE_FOREGROUND){

packageName = rap.processName;

System.out.println("packageName = "+packageName);

return;

}

}


getRunningTasks : 현재 deprecated 된 함수입니다. 

getRunningAppProcesses : Activity 명까지는 얻어오진 못해도 현재 실행중인 프로세스 리스트를 알수있어요~!(패키지명)

RunningAppProcesses(rap) 여기서 IMPORTANCE_FOREGROUND 이거로 한번 걸러내면 현재 FOREGROUND 실행중인 앱 목록이 나옵니다. 거기서 본인의 앱의 패키지명과 일치한지 않한지 비교하면되겟네요~!


궁금하시면 저기 if문 밖에서 로그한번 찍어보시면 어떤정보가 어떤 순서로찍히는지 볼수있는지 알거에요. 

System.out.println("packageName = "+packageName+", importance = "+rap.importance );

[출처] 안드로이드사이드 - http://www.androidside.com/bbs/board.php?bo_table=B49&wr_id=159456#c_159485


'모바일 > Android' 카테고리의 다른 글

깨달음 (2016.12.30)  (0) 2016.12.29
TOUCH_EXPLORATION_ENABLED 관련  (0) 2016.12.29
could not find method apt() for arguments..  (0) 2016.12.28
android version  (0) 2016.12.28
Android 개발시 참조할 라이브러리  (0) 2016.12.26