android 关闭应用

我之前一直采用的是System.exit(0);

今天看到有人说这个方法不太好,这是J2SE里的方法,他主要是通过终止正在运行的JAVA虚拟机,导致程序终止。

推荐以下方法:

1.杀死本进程:

android.os.Process.killProcess(android.os.Process.myPid());

2.强制关闭与该包有关的一切活动(杀死其他进程):

ActivityManager manager = (ActivityManager)getSystemService(Context.ACTIVITY_SERVICE);
		manager.killBackgroundProcesses("包名");

因为杀死别的进程,所以我们需要加入权限:

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

至于下面这两种方式杀死进程之后还能不能收到service,比如推送之类。我不得而知(后来我测试,可以接收)。我原来使用的System.exit(0);是可以的。

2014.7.2更:

今天又看到有人说System.exit(0);是比较好的方法,他使程序正常退出。

而android.os.Process.killProcess(android.os.Process.myPid());则是强制垃圾回收。我类个去。


评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值