您的位置:首页 > 其它

foursquare -5 BroadcastReceiver 退出程序

2011-11-01 15:48 190 查看
/article/6938738.html

还有一种就是使用方法是使用Android的Broadcast机制。在所有的Activity中注册退出程序的消息,当收到消息时调用finish方法。 然后再有退出程序功能的Activity上广播关闭消息。代码如下:

package com.kingtone.activity;

import android.app.Activity;
import android.content.BroadcastReceiver;
import android.content.Context;
import android.content.Intent;
import android.content.IntentFilter;
/**
* 所有Activity的父类,用来注册退出程序的广播事件,
* 并且对收到的退出程序事件进行处理
* @author Administrator
*
*/
public class CommonActivity  extends Activity {

//广播的内部类,当收到关闭事件时,调用finish方法结束activity
private BroadcastReceiver broadcastReceiver = new BroadcastReceiver() {
@Override
public void onReceive(Context context, Intent intent) {
finish();
}
};

@Override
public void onResume() {
super.onResume();
//在当前的activity中注册广播
IntentFilter filter = new IntentFilter();
filter.addAction(GlobalVarable.EXIT_ACTION);
this.registerReceiver(this.broadcastReceiver, filter);
}
}
@Override
public void onDestroy() {
super.onDestroy();
unregisterReceiver(mLoggedOutReceiver);
}

@Override
public void onResume() {
super.onResume();
}

@Override
public void onPause() {
super.onPause();
}


Intent intent = new Intent();
intent.setAction(GlobalVarable.EXIT_ACTION); // 退出动作

this.sendBroadcast(intent);// 发送广播

super.finish();
//退出后台线程,以及销毁静态变量
System.exit(0);
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: