您的位置:首页 > 理论基础 > 计算机网络

【Android 网络】关于android 网络连接状态的一些代码

2013-12-18 18:08 429 查看
判断网络是否连接

public static boolean isNetworkAvailable(Context context) {
ConnectivityManager connectivity = (ConnectivityManager) context
.getSystemService(Context.CONNECTIVITY_SERVICE);
if (connectivity == null) {
Log.i("NetWorkState", "Unavailabel");
return false;
} else {
NetworkInfo[] info = connectivity.getAllNetworkInfo();
if (info != null) {
for (int i = 0; i < info.length; i++) {
if (info[i].getState() == NetworkInfo.State.CONNECTED) {
Log.i("NetWorkState", "Availabel");
return true;
}
}
}
}
return false;
}


当没有网络的时候,弹出设置框

public static void showSettingDialog(final Context context) {
AlertDialog.Builder builder = new AlertDialog.Builder(context);
builder.setIcon(android.R.drawable.ic_dialog_alert);
builder.setTitle("当前网络状态");
builder.setMessage("当前网络不可以,是否设置网络?");
builder.setPositiveButton("设置", new DialogInterface.OnClickListener() {

@Override
public void onClick(DialogInterface dialog, int which) {
Intent intent = new Intent();
intent.setAction(Settings.ACTION_WIRELESS_SETTINGS);
context.startActivity(intent);
}
});
builder.setNegativeButton("取消", new DialogInterface.OnClickListener() {

@Override
public void onClick(DialogInterface dialog, int which) {
dialog.cancel();
}
});
builder.create();
builder.show();
}


获得网络类型(WIFI、手机网络)

public static void getNetWorkType(Context context) {
ConnectivityManager connectivityManager = (ConnectivityManager) context
.getSystemService(Context.CONNECTIVITY_SERVICE);
NetworkInfo activeNetInfo = connectivityManager.getActiveNetworkInfo();
if (activeNetInfo == null) {
Toast.makeText(context, "没有网络连接", Toast.LENGTH_SHORT).show();
return;
}
switch (activeNetInfo.getType()) {
case ConnectivityManager.TYPE_MOBILE:
Toast.makeText(context, "手机GPRS网络连接", Toast.LENGTH_SHORT).show();
break;
case ConnectivityManager.TYPE_WIFI:
Toast.makeText(context, "WIFI网络连接", Toast.LENGTH_SHORT).show();
break;
default:
Toast.makeText(context, "某网络连接", Toast.LENGTH_SHORT).show();
break;
}
}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: