Android2.2使用广播机制完全退出程序
2011-07-04 10:12
597 查看
最近在开发Android2.2平台上的一款软件,期间遇到了如何完全退出应用程序的问题。在网上找了不少方法,比如:使用ActivityManager的killBackgroundProcesses方法;使用ActivityManager的restartPackage方法;使用android.os.Process.killProcess方法;使用System.exit(0)方法等等。结果在自己的程序中试了之后发现上述几种方法都不起作用。。。。正在我感到束手无策的时候,我在网上发现了一种使用广播机制退出程序的方法,自己试了试发现可以完全退出程序,现将该方法总结如下:
基本思路
在你的每个Activity里,注册一个特定的Broadcast,当你想退出程序时,就send一个特定的Broadcast,这样所有还没有finish的activity都可以接收到这个broadcast,接收到broadcast后,就finish掉Activity。这样该程序的所有Activity就finish了,也就达到了退出程序的效果。
示例代码
实现过程中,为了优化程序,首先写一个父类继承Activity,其他的Activity都继承此父类(你也可以在每个Activity中实现其中的代码,不过相比这种有点麻烦),代码如下:
然后在需要退出的Activity中添加close方法,然后在要进行退出程序操作的地方调用close方法即可。代码如下:
特别说明
如果你的程序中的Activity比较少,那么建议你不要使用这种方法;上述方法在Activity比较多的情况下比较凑效。
THE END!
基本思路
在你的每个Activity里,注册一个特定的Broadcast,当你想退出程序时,就send一个特定的Broadcast,这样所有还没有finish的activity都可以接收到这个broadcast,接收到broadcast后,就finish掉Activity。这样该程序的所有Activity就finish了,也就达到了退出程序的效果。
示例代码
实现过程中,为了优化程序,首先写一个父类继承Activity,其他的Activity都继承此父类(你也可以在每个Activity中实现其中的代码,不过相比这种有点麻烦),代码如下:
import android.app.Activity; import android.content.BroadcastReceiver; import android.content.Context; import android.content.Intent; import android.content.IntentFilter; public class ApplicationActivity extends Activity { private BroadcastReceiver receiver = new BroadcastReceiver() { @Override public void onReceive(Context context, Intent intent) { finish(); } }; @Override public void onResume() { super.onResume(); // 在当前的activity中注册广播 IntentFilter filter = new IntentFilter(); filter.addAction("Exit"); this.registerReceiver(this.receiver, filter); } }
然后在需要退出的Activity中添加close方法,然后在要进行退出程序操作的地方调用close方法即可。代码如下:
private void close() { Intent intent = new Intent(); intent.setAction("ExitApp"); this.sendBroadcast(intent); super.finish(); }
特别说明
如果你的程序中的Activity比较少,那么建议你不要使用这种方法;上述方法在Activity比较多的情况下比较凑效。
THE END!
相关文章推荐
- Android 2.2完全退出程序, 使用广播机制
- android2.2完全退出程序, 使用广播机制
- android完全退出程序, 使用广播机制。与众不同,仔细看
- android2.2使用广播机制进行完全退出
- Android2.2完全退出程序
- Android中使用广播机制退出多个Activity
- Android中使用广播机制退出多个Activity
- 通过广播使Android程序完全退出
- Android中使用广播机制 退出多个Activity
- Android中使用广播机制退出多个Activity
- 广播的妙用-android程序完全退出,销毁所有activity方法
- 通过广播使Android程序完全退出
- Android之利用广播实现完全退出程序功能
- Android中使用广播机制退出多个Activity
- Android 2.2关闭所有Activity完全退出程序方法
- 关于程序退出无法关闭所有界面问题 通过广播使Android程序完全退出
- android 2.2 完全 退出 ---程序代码
- Android中使用广播机制退出多个Activity
- Android退出程序(二)——利用广播机制
- Android退出程序(二)——利用广播机制