Android 网络链接判断
来源:互联网 发布:淘宝优品乐购 编辑:程序博客网 时间:2024/05/19 02:00
Android 网络连接判断
1.网络连接类型判断
NetworkInfo activeNetInfo = connectivityManager.getActiveNetworkInfo();
activeNetInfo.getType()==ConnectivityManager.TYPE_WIFI/TYPE_MOBILE
或者
- ConnectivityManager connec = (ConnectivityManager)getSystemService(Context.CONNECTIVITY_SERVICE);
- if (connec.getNetworkInfo(1).getState() == NetworkInfo.State.CONNECTED)
- text.setText("wifi方式连接");
- if (connec.getNetworkInfo(0).getState() == NetworkInfo.State.CONNECTED)
- text.setText("GPRS方式连接");
如果拟开发一个网络应用的程序,首先考虑是否接入网络,在Android手机中判断是否联网可以通过 ConnectivityManager 类的isAvailable()方法判断,首先获取网络通讯类的实例 ConnectivityManager cwjManager=(ConnectivityManager)getSystemService(Context.CONNECTIVITY_SERVICE); ,使用cwjManager.getActiveNetworkInfo().isAvailable(); 来返回是否有效,如果为True则表示当前Android手机已经联网,可能是WiFi或GPRS、HSDPA等等,具体的可以通过 ConnectivityManager 类的getActiveNetworkInfo() 方法判断详细的接入方式,需要注意的是有关调用需要加入这个权限,android开发网提醒大家在真机上Market和Browser程序都使用了这个方法,来判断是否继续,同时在一些网络超时的时候也可以检查下网络连接是否存在,以免浪费手机上的电力资源。
android 中查看当前是否联网
方法如下:
ConnectivityManager cManager=(ConnectivityManager)getSystemService(Context.CONNECTIVITY_SERVICE);
NetworkInfo info = cwjManager.getActiveNetworkInfo();
if (info != null && info.isAvailable()){
//do something
//能联网
return true;
}else{
//do something
//不能联网
return false;
}
如果为True则表示当前Android手机已经联网,可能是WiFi或GPRS、HSDPA等等,具体的可以通过 ConnectivityManager 类的getActiveNetworkInfo() 方法判断详细的接入方式。
同时要在manifest里面加个权限
<uses-permission android:name="android.permission.ACCESS_NETWORK_STATE"/>
2、其中选择接入点的函数可以参考
public int startUsingNetworkFeature (int networkType, String feature)。
3.GPRS网络连接类型(cmwap/cmnet)程序判断
本来想通过contenprovider将APN设置的数据库当前选择读出来,但似乎在我的HTC G2上无法运行。后来想直接通过读取网络连接信息来得到相关连接类型,涉及类包括:ConnectivityManager以及NetworkInfo。主要在getExtraInfo()得到类型结果。不多说,贴代码如下:
- ConnectivityManager connectivityManager = (ConnectivityManager)getSystemService( Context.CONNECTIVITY_SERVICE );
- NetworkInfo activeNetInfo = connectivityManager.getActiveNetworkInfo();
- NetworkInfo mobNetInfo = connectivityManager.getNetworkInfo(ConnectivityManager.TYPE_MOBILE ); if( mobNetInfo != null )
- {
- Toast.makeText( this, "Mobile Network Type : " + mobNetInfo.getExtraInfo(), Toast.LENGTH_SHORT ).show();
- }
}
注:
判断网络类型可以直接通过networkInfo.getType()的返回值来判断。
如:
Context context = listActivity.getApplicationContext();//获取应用上下文
ConnectivityManager connectivityManager = (ConnectivityManager) context
.getSystemService(Context.CONNECTIVITY_SERVICE);//获取系统的连接服务
NetworkInfo activeNetInfo = connectivityManager.getActiveNetworkInfo();//获取网络的连接情况
if(activeNetInfo.getType()==ConnectivityManager.TYPE_WIFI){
//判断WIFI网
}else if(activeNetInfo.getType()==ConnectivityManager.TYPE_MOBILE) {
//判断3G网
}
可能会用到:
// 跳转到无线网络设置界面
startActivity(new Intent(android.provider.Settings.ACTION_WIRELESS_SETTINGS));
// 跳转到无限wifi网络设置界面
startActivity(new Intent(android.provider.Settings.ACTION_WIFI_SETTINGS));
- android 判断网络链接
- Android 网络链接判断
- android 检查网络链接,判断网络链接
- 判断android手机网络链接
- Android判断网络链接状态
- android 判断wifi网络是否链接
- android 判断3G网络是否链接
- android如何让判断网络链接
- Android 判断是链接网络类型
- Android 判断手机网络是否链接
- 判断网络链接
- 判断网络是否链接
- 判断网络是否链接
- 手机网络链接判断
- 判断网络是否链接
- Android 判断是否有网络正在链接中
- iOS 网络链接的判断
- 判断是否有网络链接
- 基于键盘过滤驱动的键盘助手
- linux内核编译过程的最终总结版
- 每一个activity都要在AndroidManifest.xml注册和字体
- 50个高端大气上档次的管理后台界面模板
- LeetCode 96: Unique Binary Search Tree
- Android 网络链接判断
- UICC, CSIM, RUIM, UIM, USIM, SIM
- 网站原创文章为什么不被百度搜录的几种猜想
- Flyweight
- 软件架构的风险消除策略
- ios 限制只能输入字母和数字
- jqGrid使用笔记.
- JQuery的学习:DOM操作
- Android学习------------xml布局文件