如何在Android中关闭其他应用?

我一直在开发一个应用程序,我需要在我的代码中关闭另一个应用程序。 有谁知道任何API打电话关闭应用程序?

顺便说一句:我的应用程序将预先安装。

谢谢

Android 2.2 (即前进)以来,您只能关闭其他应用程序的background processes ,您无法再关闭其主要活动。

如果您的应用定位Android <2.2,请查看android.permission.RESTART_PACKAGE

如果你希望它在2.2及以上(你应该:-))上正常工作,请查看android.permission.KILL_BACKGROUND_PROCESSES ,但同样,这只会关闭后台服务等等,并可能“搞乱”其他应用程序而不是做好的。

使用正确的权限,您可以执行以下操作:

 private ActivityManager am = (ActivityManager) this.getSystemService(ACTIVITY_SERVICE); am.restartPackage("com.jimmy.appToBeClosed"); 

尝试这个

  ActivityManager am = (ActivityManager) getApplicationContext().getSystemService("activity"); Method forceStopPackage; forceStopPackage =am.getClass().getDeclaredMethod("forceStopPackage",String.class); forceStopPackage.setAccessible(true); forceStopPackage.invoke(am, pkg); 

在清单文件中添加此项

  

如果两个应用程序都属于您,则可以使用AIDL进行进程间通信,以发送消息告知其他应用程序关闭。 请参阅http://developer.android.com/guide/developing/tools/aidl.html 。

由于Android活动生命周期,您根本不想关闭其他应用程序。
没有任何好处,如果它不是你的,那么关闭另一个应用程序总是有害的,关闭你自己的应用程序几乎没什么好处。

http://developer.android.com/reference/android/app/Activity.html#ActivityLifecycle

如果你肯定知道你永远不会需要一个root活动及其子(一个“app”),你可以阻止它释放内存(它不会释放那么多),但如果你这样做,用户可能会当它仍然在缓存中时重新启动它,停止,如果恢复停止状态,这可能会导致问题。 所以这是一个不好的做法。