在使用Android连接网络的时候,并不是每次都能连接到网络,在这个时候,我们最好是在程序启动的时候对网络的状态进行一下判断,如果没有网络则进行即时提醒用户进行设置。
要判断网络状态,首先需要有相应的权限,下面为权限代码:
即允许访问网络状态:
<uses-permissionandroid:name="android.permission.ACCESS_NETWORK_STATE"></uses-permission>
privatebooleanNetWorkStatus() {
booleannetSataus=false;
ConnectivityManager cwjManager=(ConnectivityManager) getSystemService(Context.CONNECTIVITY_SERVICE);
cwjManager.getActiveNetworkInfo();
if(cwjManager.getActiveNetworkInfo()!=null) {
netSataus=cwjManager.getActiveNetworkInfo().isAvailable();
}
if(netSataus) {
Builder b=newAlertDialog.Builder(this).setTitle("没有可用的网络")
.setMessage("是否对网络进行设置?");
b.setPositiveButton("是",newDialogInterface.OnClickListener() {
publicvoidonClick(DialogInterface dialog,intwhichButton) {
Intent mIntent=newIntent("/");
ComponentName comp=newComponentName(
"com.android.settings",
"com.android.settings.WirelessSettings");
mIntent.setComponent(comp);
mIntent.setAction("android.intent.action.VIEW");
startActivityForResult(mIntent,0);//如果在设置完成后需要再次进行操作,可以重写操作代码,在这里不再重写
}
}).setNeutralButton("否",newDialogInterface.OnClickListener() {
publicvoidonClick(DialogInterface dialog,intwhichButton) {
dialog.cancel();
}
}).show();
}
returnnetSataus;
}
通过上面的代码即可完成对网络状态的判断!
1 条评论
以上代码在2.X系统下运行没问题,但是在3.X或者4.0下运行崩溃