2013-02-15 44 views
1

getRunningAppProcesses()可以得到當前正在運行的進程的所有PID。在Android中,給定一個PID,如何知道它當前的運行活動和服務?

但是給定一個PID,它的進程當前可能帶有一個活動(在任務堆棧頂部)或多個服務,如何知道這些活動或服務的名稱?

+0

什麼是「當前」活動或服務?特別是與服務;多個可以一次運行。隨着活動至少你可以說,在堆棧頂... – kabuko 2013-02-15 00:30:42

+0

@kabuko好評,我會澄清這一點。 – JackWM 2013-02-15 00:35:56

回答

0
button.setOnClickListener(new OnClickListener() { 

     @Override 
     public void onClick(View v) { 
      // TODO Auto-generated method stub 
     final Handler handler = new Handler(); 

      final Runnable r = new Runnable() { 
       public void run() { 
        Log.e("start", "stsrt"); 


        ActivityManager activityManager = (ActivityManager) getSystemService(Context.ACTIVITY_SERVICE); 
        List<RunningTaskInfo> tasks = activityManager.getRunningTasks(Integer.MAX_VALUE); 
        List<RunningAppProcessInfo> procInfos = activityManager.getRunningAppProcesses(); 

        for (int i = 0; i < procInfos.size(); i++) { 
         Log.e("Running task", "Running task: " + procInfos.get(i).processName); 
        } 
        handler.postDelayed(this, 1000); 
       } 
      }; 

      handler.postDelayed(r, 1000); 

     } 
    }); 
+0

僅有代碼的答案沒有多大幫助。介意添加一些描述? – 2015-01-02 07:46:51

+0

Dude你可以閱讀有關RunningTaskInfo和RunningAppProcessInfo。[link] http://developer.android.com/reference/android/app/ActivityManager.RunningAppProcessInfo.html [link] http://developer.android.com/reference/android /app/[email protected] – 2015-01-06 08:45:39

相關問題