2012-04-05 14 views
1

私のアプリケーションを使用すると他の実行中のアプリケーションを強制終了できるように、他のアプリケーションがデバイス内で実行中であることを知る方法。それはandrioidで可能ですか?あなたのアプリケーションから他の実行中のアプリケーションを殺すために絶対にできません事前Android:実行中のアプリケーション

+0

http://stackoverflow.com/questions/4503277/android-close-other-apps –

+1

この質問が表示されるはずの可能複製 - > http://stackoverflow.com/questions/6303615/how-do -task-managers-kill-apps – OguzOzkeroglu

答えて

0

感謝。それは大きなセキュリティ上の問題になるでしょう。

2

あなたはそのようにそれらを見ることができる:

activityManager = (ActivityManager) this 
        .getSystemService(ACTIVITY_SERVICE); 
      arylistTask = new ArrayList<String>(); 
      List<ActivityManager.RunningTaskInfo> mRunningTasks = 
      activityManager.getRunningTasks(30); 

が、私はあなたがそれらを殺すことができる天気をかなり確実でありません。 私はあなたの答えとして@アキ、どのようにいくつかのタスク管理アプリケーションが働いた?ちょうど好奇心のため。

+0

30はgetRunningTasksで何を意味しますか? – Nepster

1
// Get currently running application processes 
    List<ActivityManager.RunningAppProcessInfo> list = servMng.getRunningAppProcesses(); 
    if(list != null){ 
    for(int i=0;i<list.size();++i){ 
     if("com.android.email".matches(list.get(i).processName)){ 
     int pid = android.os.Process.getUidForName("com.android.email"); 
      android.os.Process.killProcess(pid); 
     }else{ 
     mTextVIew.append(list.get(i).processName + "\n"); 
     } 
    } 
    } 

--------------------------------------------------------------------------- 

    // Get currently running service 
    List<ActivityManager.RunningServiceInfo> list = servMng.getRunningServices(1024); 
    if(list != null){ 
    for(int i=0;i<list.size();++i){ 
     mTextVIew.append(list.get(i).service.getClassName() + "\n"); 
    } 
    } 


--------------------------------------------------------------------------- 

    // Get currently running tasks 
    List<ActivityManager.RunningTaskInfo> list = servMng.getRunningTasks(1024); 
    if(list != null){ 
    for(int i=0;i<list.size();++i){ 
     mTextVIew.append(list.get(i).toString() + "\n"); 
    } 
    } 


--------------------------------------------------------------------------- 

この例では、Androidのネイティブなハードウェアからの「戻る」ボタンのイベントのバックボタンをキャプチャし、ユーザに要求し、ユーザが選択した場合、「はい」、それはアプリケーションを殺す「あなたは本当に私のアプリを残したいです」。

@Override 
public boolean onKeyDown(int keyCode, KeyEvent event) { 
    //Handle the back button 
    if(keyCode == KeyEvent.KEYCODE_BACK) { 
     //Ask the user if they want to quit 
     new AlertDialog.Builder(this) 
     .setIcon(android.R.drawable.exclamationpoint) 
     .setTitle("Exit?") 
     .setMessage("You are about to exit the Application. " + 
        "Do you really want to exit?") 
     .setPositiveButton("Yes", new DialogInterface.OnClickListener() { 
      @Override 
      public void onClick(DialogInterface dialog, int which) { 
       //Stop the activity 
       //maintenancetabs.this.finish(); 
       int pid = android.os.Process.myPid(); 
       android.os.Process.killProcess(pid); 
       } 
     }) 
     .setNegativeButton("No", null) 
     .show(); 
     return true; 
    }  else { 
     return super.onKeyDown(keyCode, event); 
    } 
} 
+0

私は、戻るボタンを使用しない他のアプリケーションを殺したいです。私のデバイスでは、私はバックボタンを持っていないので、私は近接センサーを使いたいと思っています。近接しているユーザの指が現在のアクティビティを以前のアクティビティに戻すべきとき – Prasad

関連する問題