您的位置:首页 > 其它

安卓手机判断手机联网状态

2017-04-12 15:29 218 查看
public void testConnectivityManager() {
ConnectivityManager connManager = (ConnectivityManager) this
.getSystemService(CONNECTIVITY_SERVICE);
// 获取代表联网状态的NetWorkInfo对象
NetworkInfo networkInfo = connManager.getActiveNetworkInfo();
// 获取当前的网络连接是否可用
boolean available = networkInfo.isAvailable();
if(available){
Log.i("通知", "当前的网络连接可用");
}
else{
Log.i("通知", "当前的网络连接可用");
}

State state = connManager.getNetworkInfo(ConnectivityManager.TYPE_MOBILE).getState();
if(State.CONNECTED==state){
Log.i("通知", "GPRS网络已连接");
}

state = connManager.getNetworkInfo(ConnectivityManager.TYPE_WIFI).getState();
if(State.CONNECTED==state){
Log.i("通知", "WIFI网络已连接");
}

// 跳转到无线网络设置界面
startActivity(new Intent(android.provider.Settings.ACTION_WIRELESS_SETTINGS));
// 跳转到无限wifi网络设置界面
startActivity(new Intent(android.provider.Settings.ACTION_WIFI_SETTINGS));

}
原博转自:http://blog.csdn.net/chenzheng_java/article/details/6387116/
整个activity的请求结果:
public class NetWorkActivity extends ActionBarActivity {

private final static String TAG = RAISE;

@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_net_work);
check_network();

IntentFilter filter = new IntentFilter(ConnectivityManager.CONNECTIVITY_ACTION);
registerReceiver(NetworkReceiver, filter);
}

private void check_network() {
//获取网络管理类
ConnectivityManager manager = (ConnectivityManager) getSystemService(Context.CONNECTIVITY_SERVICE);
//得到当前可以使用的网络
NetworkInfo activeNetworkInfo = manager.getActiveNetworkInfo();
//判断当前网络类型
if (activeNetworkInfo != null) {
if (activeNetworkInfo.getType() == ConnectivityManager.TYPE_MOBILE) {
Log.d(TAG, 当前网络: + activeNetworkInfo.getTypeName());
} else if (activeNetworkInfo.getType() == ConnectivityManager.TYPE_WIFI) {
Log.d(TAG, 当前网络: + activeNetworkInfo.getTypeName());
}
NetworkInfo.State state = activeNetworkInfo.getState();
if (state.ordinal() ==NetworkInfo.State.CONNECTED.ordinal()) {
Log.d(TAG, activeNetworkInfo.getTypeName() + 网络可用);
}
} else {
Log.d(TAG, 无网络可用);
}
}

BroadcastReceiver NetworkReceiver = new BroadcastReceiver() {
@Override
public void onReceive(Context context, Intent intent) {
if (intent.getAction().equals(ConnectivityManager.CONNECTIVITY_ACTION)) {
Log.d(TAG, 广播接受);
check_network();
}
}
};

@Override
protected void onDestroy() {
unregisterReceiver(NetworkReceiver);
super.onDestroy();
}
}




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