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

Android网络状态判断

2016-08-31 00:08 453 查看
  众所周知当我们在手机上打开一款安卓应用时,如果在应用中需要网络时(前提是手机上的网络开关没有开启),通常都会弹出一个提示框,然后根据相应的按钮去打开我们的网络开关,然后手机上的应用就能够联网加载数据啦!好啦废话不多说,先贴上代码,注释还是比较详细的,很简单,相信你能够看懂的

package com.syuct.heguicun.netconnection;
import android.net.ConnectivityManager;
import android.net.NetworkInfo;
import android.os.Bundle;
import android.app.AlertDialog;
import android.content.Context;
import android.content.DialogInterface;
import android.content.Intent;
import android.support.v7.app.AppCompatActivity;
import android.widget.Toast;
public class MainActivity extends AppCompatActivity{
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
getNetInfor();
}
public void getNetInfor() {
//首先是获取网络连接管理者
ConnectivityManager manager = (ConnectivityManager)
getSystemService(Context.CONNECTIVITY_SERVICE);
NetworkInfo info = manager.getActiveNetworkInfo();
//网络状态存在并且是已连接状态
if (info != null && info.isConnected()) {
Toast.makeText(MainActivity.this, "网络已连接", Toast.LENGTH_SHORT).show();
} else {
Toast.makeText(MainActivity.this, "网络连接失败", Toast.LENGTH_SHORT).show();
//下面的这种写法你应该看得懂
new AlertDialog.Builder(MainActivity.this)
.setTitle("请检查网络连接")
.setNegativeButton("确定", new DialogInterface.OnClickListener() {
@Override
public void onClick(DialogInterface dialog, int which) {
if (android.os.Build.VERSION.SDK_INT > 10) {
//安卓系统3.0以上打开设置界面,也可以直接用ACTION_WIRELESS_SETTINGS打开到wifi界面
startActivity(new Intent(android.provider.Settings.ACTION_SETTINGS));
} else {
startActivity(new Intent(android.provider.Settings.ACTION_WIRELESS_SETTINGS));
}
}
})
.show();
}
}
}
是不是非要看效果 图才知道是不是你要找的Demo,好吧,那就先看看效果吧!





Demo下载
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息