2014-04-27 3 views
1

이 코드를 사용하여 백그라운드 프로세스를 모두 종료합니다. 버튼을 클릭 할 때 문제가 발생하지 않는 경우가 있습니다. 즉, 어떤 응용 프로그램도 죽이지 않으므로 다른 방법이 있습니까? Thnx킬링 백그라운드 프로세스 문제

package com.example.api; 

import android.app.Activity; 
import android.app.ActivityManager; 
import android.content.Context; 
import android.content.pm.ApplicationInfo; 
import android.content.pm.PackageManager; 
import android.os.Bundle; 
import android.util.Log; 
import android.view.View; 
import android.widget.Button; 
import android.os.Process; 

import java.util.List; 

public class MainActivity extends Activity { 

    Button theButton; 

    public void onCreate(Bundle savedInstanceState) { 
     super.onCreate(savedInstanceState); 
     setContentView(R.layout.activity_main); 
     theButton = (Button) findViewById(R.id.button); 
     theButton.setOnClickListener(new Button.OnClickListener() { 
      public void onClick(View v) 
      { 
       try { 

       List<ApplicationInfo> packages; 
       PackageManager pm; 
       pm = getPackageManager(); 
       packages = pm.getInstalledApplications(150); 
       ActivityManager mActivityManager = (ActivityManager)getSystemService(Context.ACTIVITY_SERVICE); 

       for (ApplicationInfo packageInfo : packages) { 
        if((packageInfo.flags & ApplicationInfo.FLAG_SYSTEM)==1)continue; 
        if(packageInfo.packageName.equals("com.example.api")) continue; 
        mActivityManager.killBackgroundProcesses(packageInfo.packageName); 

       } 
       } finally { 
       // finish(); 
       } 

      } 
     }); 

    } 

} 

<uses-permission android:name="android.permission.KILL_BACKGROUND_PROCESSES"/> 
+0

응용 프로그램 패키지 이름이 올바른지 확인하십시오. "com.example.api" – Libin

답변

0

그리고 당신은 활동을 마무리 할 예정이다

finally { 
    finish(); 
} 

을 썼다.