从我的应用关闭应用

时间:2014-01-20 05:06:05

标签: java android android-intent

我开发了一个应用程序密码保护另一个应用程序(比如应用程序A)。因此,当我尝试打开应用A时,活动会在A的顶部上弹出,提示用户输入密码。输入错误后,应关闭该活动,也关闭应用A 直接

现在我尝试使用此代码执行此操作:

List<ActivityManager.RunningAppProcessInfo> pids = Unlock.am.getRunningAppProcesses();
                   for(int i = 0; i < pids.size(); i++)
                   {
                       ActivityManager.RunningAppProcessInfo info = pids.get(i);
                       if(info.processName.equalsIgnoreCase("com.A")){
                          pid = info.pid;
                          break;
                       } 
                   }
                android.os.Process.killProcess(pid);

但它不起作用。

后来我意识到这可能是因为app A的过程不是我应用程序进程的直接孩子(也就是说,我的应用程序没有调用app A)。那么无论如何我可以关闭,但不一定从我的应用程序中杀死应用程序A?我的意思是说,杀死应用A是可选但关闭它是强制性

2 个答案:

答案 0 :(得分:1)

也许这会奏效:

ActivityManager activityManager = (ActivityManager) context.getSystemService("activity");
activityManager.killBackgroundProcesses("com.A");

您需要向清单添加以下权限。

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

答案 1 :(得分:1)

我不确定如何杀死另一个应用程序进程。但输入错误的密码后,您可以将用户带到主屏幕...

private void launchHomeScreen() {
    Intent intent = new Intent(Intent.ACTION_MAIN);
    intent.addCategory(Intent.CATEGORY_HOME);
    startActivity(intent);
    finish(); // finish our Activity (based on your requirement)
}