public class NetWorkBroadCast
extends BroadcastReceiver {
private AlertDialog
connectDialog;
private AlertDialog
disconnectDialog;
public void onReceive(Context context, Intent intent) {
final ConnectivityManager connectivityManager= (ConnectivityManager) context.getSystemService(Context.
CONNECTIVITY_SERVICE); NetworkInfo networkInfo=connectivityManager.getActiveNetworkInfo();
if (networkInfo!=
null&&networkInfo.isConnected()){
if (
connectDialog==
null){
final AlertDialog.Builder builder=
new AlertDialog.Builder(context); builder.setTitle(
"网络提示") .setMessage(
"网络已连接") .setPositiveButton(
"确定",
new DialogInterface.OnClickListener() {
@Override
public void onClick(DialogInterface dialog,
int which) {
builder.create().dismiss(); } }).setNegativeButton(
"取消",
new DialogInterface.OnClickListener() {
@Override
public void onClick(DialogInterface dialog,
int which) {
builder.create().dismiss(); } });
connectDialog=builder.create(); }
connectDialog.show();
connectDialog.setCanceledOnTouchOutside(
true); }
else {
if (networkInfo==
null){
if (
disconnectDialog==
null){
final AlertDialog.Builder builder=
new AlertDialog.Builder(context); builder.setTitle(
"网络提示") .setMessage(
"网络已断开") .setPositiveButton(
"确定",
new DialogInterface.OnClickListener() {
@Override
public void onClick(DialogInterface dialog,
int which) {
builder.create().dismiss(); } }).setNegativeButton(
"取消",
new DialogInterface.OnClickListener() {
@Override
public void onClick(DialogInterface dialog,
int which) {
builder.create().dismiss(); } });
disconnectDialog=builder.create(); }
disconnectDialog.show();
disconnectDialog.setCanceledOnTouchOutside(
true); } } } }
在MainActivity里面注册
定义刚才那个类
private NetWorkBroadCast
reciver;
在OnCreate里面注册或者封装起来用
reciver=new NetWorkBroadCast(); IntentFilter filter=new IntentFilter(ConnectivityManager.CONNECTIVITY_ACTION); registerReceiver(reciver,filter);