转自:http://blog.csdn.net/androidbluetooth/article/details/6860146

直接上代码,没有什么好说的!

[java] view plain copy print ?
  1. packagemark.zhang;
  2. importjava.util.List;
  3. importandroid.content.Context;
  4. importandroid.location.LocationManager;
  5. importandroid.net.ConnectivityManager;
  6. importandroid.net.NetworkInfo;
  7. importandroid.telephony.TelephonyManager;
  8. publicclassNetworkProber{
  9. /**
  10. *网络是否可用
  11. *
  12. *@paramactivity
  13. *@return
  14. */
  15. publicstaticbooleanisNetworkAvailable(Contextcontext){
  16. ConnectivityManagerconnectivity=(ConnectivityManager)context
  17. .getSystemService(Context.CONNECTIVITY_SERVICE);
  18. if(connectivity==null){
  19. }else{
  20. NetworkInfo[]info=connectivity.getAllNetworkInfo();
  21. if(info!=null){
  22. for(inti=0;i<info.length;i++){
  23. if(info[i].getState()==NetworkInfo.State.CONNECTED){
  24. returntrue;
  25. }
  26. }
  27. }
  28. }
  29. returnfalse;
  30. }
  31. /**
  32. *Gps是否打开
  33. *
  34. *@paramcontext
  35. *@return
  36. */
  37. publicstaticbooleanisGpsEnabled(Contextcontext){
  38. LocationManagerlocationManager=((LocationManager)context
  39. .getSystemService(Context.LOCATION_SERVICE));
  40. List<String>accessibleProviders=locationManager.getProviders(true);
  41. returnaccessibleProviders!=null&&accessibleProviders.size()>0;
  42. }
  43. /**
  44. *wifi是否打开
  45. */
  46. publicstaticbooleanisWifiEnabled(Contextcontext){
  47. ConnectivityManagermgrConn=(ConnectivityManager)context
  48. .getSystemService(Context.CONNECTIVITY_SERVICE);
  49. TelephonyManagermgrTel=(TelephonyManager)context
  50. .getSystemService(Context.TELEPHONY_SERVICE);
  51. return((mgrConn.getActiveNetworkInfo()!=null&&mgrConn
  52. .getActiveNetworkInfo().getState()==NetworkInfo.State.CONNECTED)||mgrTel
  53. .getNetworkType()==TelephonyManager.NETWORK_TYPE_UMTS);
  54. }
  55. /**
  56. *判断当前网络是否是wifi网络
  57. *if(activeNetInfo.getType()==ConnectivityManager.TYPE_MOBILE){//判断3G网
  58. *
  59. *@paramcontext
  60. *@returnboolean
  61. */
  62. publicstaticbooleanisWifi(Contextcontext){
  63. ConnectivityManagerconnectivityManager=(ConnectivityManager)context
  64. .getSystemService(Context.CONNECTIVITY_SERVICE);
  65. NetworkInfoactiveNetInfo=connectivityManager.getActiveNetworkInfo();
  66. if(activeNetInfo!=null
  67. &&activeNetInfo.getType()==ConnectivityManager.TYPE_WIFI){
  68. returntrue;
  69. }
  70. returnfalse;
  71. }
  72. /**
  73. *判断当前网络是否是3G网络
  74. *
  75. *@paramcontext
  76. *@returnboolean
  77. */
  78. publicstaticbooleanis3G(Contextcontext){
  79. ConnectivityManagerconnectivityManager=(ConnectivityManager)context
  80. .getSystemService(Context.CONNECTIVITY_SERVICE);
  81. NetworkInfoactiveNetInfo=connectivityManager.getActiveNetworkInfo();
  82. if(activeNetInfo!=null
  83. &&activeNetInfo.getType()==ConnectivityManager.TYPE_MOBILE){
  84. returntrue;
  85. }
  86. returnfalse;
  87. }
  88. }

另外还有两个方法判断网络是否可用:

[java] view plain copy print ?
  1. publicstaticbooleanisNetworkAvailable_00(Contextcontext){
  2. ConnectivityManagercm=((ConnectivityManager)context
  3. .getSystemService(Context.CONNECTIVITY_SERVICE));
  4. if(cm!=null){
  5. NetworkInfoinfo=cm.getActiveNetworkInfo();
  6. if(info!=null&&info.isConnectedOrConnecting()){
  7. returntrue;
  8. }
  9. }
  10. returnfalse;
  11. }
  12. publicstaticbooleanisNetworkAvailable_01(Contextcontext){
  13. ConnectivityManagercm=(ConnectivityManager)context
  14. .getSystemService(Context.CONNECTIVITY_SERVICE);
  15. NetworkInfonetwork=cm.getActiveNetworkInfo();
  16. if(network!=null){
  17. returnnetwork.isAvailable();
  18. }
  19. returnfalse;
  20. }

更加严谨的写法:

[java] view plain copy print ?
  1. publicstaticbooleancheckNet(Contextcontext){
  2. try{
  3. ConnectivityManagerconnectivity=(ConnectivityManager)context.getSystemService(Context.CONNECTIVITY_SERVICE);
  4. if(connectivity!=null){
  5. NetworkInfoinfo=connectivity.getActiveNetworkInfo();
  6. if(info!=null&&info.isConnected()){
  7. if(info.getState()==NetworkInfo.State.CONNECTED){
  8. returntrue;
  9. }
  10. }
  11. }
  12. }catch(Exceptione){
  13. returnfalse;
  14. }
  15. returnfalse;
  16. }



更多相关文章

  1. 移动端判断是android手机还是ios手机
  2. 关于android中网络图片下载中oom解决开源框架Afinal的探究
  3. 第1章 Java基本概念及环境配置——FAQ1.04 Android与Java语言有
  4. Android(安卓)HttpURLConnection应用技巧分享
  5. android中网络操作使用总结(http)
  6. Android(五)数据存储之五网络数据交互
  7. Android——获取手机当前信号强度(dbm/asu值)
  8. android 在android中教你一行代码判断是不是主线程
  9. Android双机(网络和USB)调试及其完美ROOT

随机推荐

  1. [Android]attrs.xml文件中属性类型format
  2. 在Windows上搭建Android的JAVA开发环境图
  3. Android(安卓)3.0 r1中文API文档(103) —
  4. Android实现开机自启动无效问题
  5. android中上层是如何接收按键事件的
  6. android 短信发送学习
  7. U3D 发布 Android
  8. Android开机广播无法接收问题
  9. Android下pm 命令详解
  10. Android入门第九篇之AlertDialog