1
我正在创建一个应用程序必须有互联网连接, ,如果连接丢失,我需要禁用任何与用户的交互。禁用应用程序与用户互联网连接失去互动android
我通过侦听android.net.conn.CONNECTIVITY_CHANGE来做到这一点。 这很好。
我想把一个警告对话框和灰色从BroadcastReceiver整个背景。
无论如何要做到这一点?
谢谢。
Shahar。
我正在创建一个应用程序必须有互联网连接, ,如果连接丢失,我需要禁用任何与用户的交互。禁用应用程序与用户互联网连接失去互动android
我通过侦听android.net.conn.CONNECTIVITY_CHANGE来做到这一点。 这很好。
我想把一个警告对话框和灰色从BroadcastReceiver整个背景。
无论如何要做到这一点?
谢谢。
Shahar。
如果有人想知道, 我在我的主要活动中使用广播接收器。
/*
here we handle connection lost event
show a popup over the screen to notify the user
*/
static final String ACTION = "android.net.conn.CONNECTIVITY_CHANGE";
public class ConnectionReceiver extends BroadcastReceiver {
private static final String TAG = "ConnectionReceiver";
private AlertDialog alertDialog;
public ConnectionReceiver() {
}
@Override
public void onReceive(Context context, Intent intent) {
if (intent.getAction().equals("android.net.conn.CONNECTIVITY_CHANGE")) {
ConnectivityManager cm =
(ConnectivityManager) context.getSystemService(Context.CONNECTIVITY_SERVICE);
NetworkInfo activeNetwork = cm.getActiveNetworkInfo();
boolean isConnected = activeNetwork != null &&
activeNetwork.isConnectedOrConnecting();
if (isConnected) {
try {
if (alertDialog != null && alertDialog.isShowing())
alertDialog.dismiss();
} catch (Exception e) {
e.printStackTrace();
}
} else {
if (alertDialog == null || !alertDialog.isShowing()) {
AlertDialog.Builder builder = new AlertDialog.Builder(context);
builder.setTitle("No internet connection");
builder.setMessage("check your connection.");
builder.setCancelable(false);
alertDialog = builder.create();
alertDialog.show();
}
}
}
}
}