Android 判断当前网络 wifi 3gwap(cmwap) 3gnet(cmnet)

2024-02-05 21:32

本文主要是介绍Android 判断当前网络 wifi 3gwap(cmwap) 3gnet(cmnet),希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

Java代码   [url=javascript:void()]Android 判断当前网络 wifi 3gwap(cmwap) 3gnet(cmnet) - Tienfook - Tienfooks Blogs.[/url]
  1. package lab.sodino.net;   
  2.     
  3.  import java.net.InetAddress;   
  4.     
  5.  import android.app.Activity;   
  6.  import android.content.Context;   
  7.  import android.net.ConnectivityManager;   
  8.  import android.net.NetworkInfo;   
  9.  import android.net.wifi.WifiInfo;   
  10.  import android.net.wifi.WifiManager;   
  11.  import android.os.Bundle;   
  12.  import android.widget.ScrollView;   
  13.  import android.widget.TextView;   
  14.     
  15.  public class NetAct extends Activity {   
  16.     private TextView textView;   
  17.     
  18.     public void onCreate(Bundle savedInstanceState) {   
  19.         super.onCreate(savedInstanceState);   
  20.         textView = new TextView(this);   
  21.         textView.setBackgroundColor(0xffffffff);   
  22.         textView.setTextColor(0xff0000ff);   
  23.         textView.setTextSize(15.0f);   
  24.         textView.setScrollBarStyle(TextView.SCROLLBARS_OUTSIDE_OVERLAY);   
  25.     
  26.         ScrollView scrollView = new ScrollView(this);   
  27.         scrollView.addView(textView);   
  28.         setContentView(scrollView);   
  29.         getLocalHost();   
  30.         getWifiInfo();   
  31.         initNetworkInfo();   
  32.     }   
  33.     
  34.     private void getLocalHost() {   
  35.         try {   
  36.             InetAddress iAdd = InetAddress.getLocalHost();   
  37.             String line = "";   
  38.             String hostName = iAdd.getHostName();   
  39.             if (hostName != null) {   
  40.                 InetAddress[] adds = InetAddress.getAllByName(hostName);   
  41.                 for (int i = 0; i  < adds.length; i++) {   
  42.                     iAdd = adds;   
  43.                     line = "HostName=" + iAdd.getHostName() + "\n";   
  44.                     textView.append(line);   
  45.                     line = "CanonicalHostName=" + iAdd.getCanonicalHostName()   
  46.                             + "\n";   
  47.                     textView.append(line);   
  48.                     line = "HostAddress=" + iAdd.getHostAddress() + "\n";   
  49.                     textView.append(line);   
  50.                     textView.append("\n");   
  51.                 }   
  52.             }   
  53.         } catch (Exception e) {   
  54.             e.printStackTrace();   
  55.     
  56.         }   
  57.     }   
  58.     
  59.     public void getWifiInfo() {   
  60.         WifiManager wifi = (WifiManager) getSystemService(Context.WIFI_SERVICE);   
  61.         WifiInfo info = wifi.getConnectionInfo();   
  62.         textView.append("HiddenSSID=" + info.getHiddenSSID() + "\n");   
  63.         textView.append("IpAddress=" + info.getIpAddress() + "\n");   
  64.         textView.append("LinkSpeed=" + info.getLinkSpeed() + "\n");   
  65.         textView.append("NetworkId=" + info.getNetworkId() + "\n");   
  66.         textView.append("Rssi=" + info.getRssi() + "\n");   
  67.         textView.append("SSID=" + info.getSSID() + "\n");   
  68.         textView.append("MacAddress=" + info.getMacAddress() + "\n");   
  69.     }   
  70.     
  71.     public void initNetworkInfo() {   
  72.         ConnectivityManager mag = (ConnectivityManager) getSystemService(Context.CONNECTIVITY_SERVICE);   
  73.         // 此处输出当前可用网络   
  74.         textView.append("\nActive:\n");   
  75.         NetworkInfo info = mag.getActiveNetworkInfo();   
  76.         textView.append("ExtraInfo=" + info.getExtraInfo() + "\n");   
  77.         textView.append("SubtypeName=" + info.getSubtypeName() + "\n");   
  78.         textView.append("TypeName=" + info.getTypeName() + "\n");   
  79.     
  80.         textView.append("\nWifi:\n");   
  81.         NetworkInfo wifiInfo = mag   
  82.                 .getNetworkInfo(ConnectivityManager.TYPE_WIFI);   
  83.     
  84.         textView.append("ExtraInfo=" + wifiInfo.getExtraInfo() + "\n");   
  85.         textView.append("SubtypeName=" + wifiInfo.getSubtypeName() + "\n");   
  86.         textView.append("TypeName=" + wifiInfo.getTypeName() + "\n");   
  87.         NetworkInfo mobInfo = mag   
  88.                 .getNetworkInfo(ConnectivityManager.TYPE_MOBILE);   
  89.         textView.append("\nMobile:\n");   
  90.         textView.append("ExtraInfo=" + mobInfo.getExtraInfo() + "\n");   
  91.         textView.append("SubtypeName=" + mobInfo.getSubtypeName() + "\n");   
  92.         textView.append("TypeName=" + mobInfo.getTypeName() + "\n");   
  93.     }   
  94.  }  

这篇关于Android 判断当前网络 wifi 3gwap(cmwap) 3gnet(cmnet)的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/682227

相关文章

java中判断json key是否存在的几种方法

《java中判断jsonkey是否存在的几种方法》在使用Java处理JSON数据时,如何判断某一个key是否存在?本文就来介绍三种方法,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的... 目http://www.chinasem.cn录第一种方法是使用 jsONObject 的 has 方法

90%的人第一步就错了! 顺利登录wifi路由器后台的技巧

《90%的人第一步就错了!顺利登录wifi路由器后台的技巧》登录Wi-Fi路由器,其实就是进入它的后台管理页面,很多朋友不知道该怎么进入路由器后台设置,感兴趣的朋友可以花3分钟了解一下... 你是不是也遇到过这种情况:家里网速突然变慢、想改WiFi密码却不知道从哪进路由器、新装宽带后完全不知道怎么设置?别慌

Python实现简单封装网络请求的示例详解

《Python实现简单封装网络请求的示例详解》这篇文章主要为大家详细介绍了Python实现简单封装网络请求的相关知识,文中的示例代码讲解详细,感兴趣的小伙伴可以跟随小编一起学习一下... 目录安装依赖核心功能说明1. 类与方法概览2.NetHelper类初始化参数3.ApiResponse类属性与方法使用实

Android实现图片浏览功能的示例详解(附带源码)

《Android实现图片浏览功能的示例详解(附带源码)》在许多应用中,都需要展示图片并支持用户进行浏览,本文主要为大家介绍了如何通过Android实现图片浏览功能,感兴趣的小伙伴可以跟随小编一起学习一... 目录一、项目背景详细介绍二、项目需求详细介绍三、相关技术详细介绍四、实现思路详细介绍五、完整实现代码

在Android中使用WebView在线查看PDF文件的方法示例

《在Android中使用WebView在线查看PDF文件的方法示例》在Android应用开发中,有时我们需要在客户端展示PDF文件,以便用户可以阅读或交互,:本文主要介绍在Android中使用We... 目录简介:1. WebView组件介绍2. 在androidManifest.XML中添加Interne

Debian 13升级后网络转发等功能异常怎么办? 并非错误而是管理机制变更

《Debian13升级后网络转发等功能异常怎么办?并非错误而是管理机制变更》很多朋友反馈,更新到Debian13后网络转发等功能异常,这并非BUG而是Debian13Trixie调整... 日前 Debian 13 Trixie 发布后已经有众多网友升级到新版本,只不过升级后发现某些功能存在异常,例如网络转

如何通过try-catch判断数据库唯一键字段是否重复

《如何通过try-catch判断数据库唯一键字段是否重复》在MyBatis+MySQL中,通过try-catch捕获唯一约束异常可避免重复数据查询,优点是减少数据库交互、提升并发安全,缺点是异常处理开... 目录1、原理2、怎么理解“异常走的是数据库错误路径,开销比普通逻辑分支稍高”?1. 普通逻辑分支 v

Android协程高级用法大全

《Android协程高级用法大全》这篇文章给大家介绍Android协程高级用法大全,本文结合实例代码给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友跟随小编一起学习吧... 目录1️⃣ 协程作用域(CoroutineScope)与生命周期绑定Activity/Fragment 中手

从基础到进阶详解Python条件判断的实用指南

《从基础到进阶详解Python条件判断的实用指南》本文将通过15个实战案例,带你大家掌握条件判断的核心技巧,并从基础语法到高级应用一网打尽,文中的示例代码讲解详细,感兴趣的小伙伴可以跟随小编一起学习一... 目录​引言:条件判断为何如此重要一、基础语法:三行代码构建决策系统二、多条件分支:elif的魔法三、

99%的人都选错了! 路由器WiFi双频合一还是分开好的专业解析与适用场景探讨

《99%的人都选错了!路由器WiFi双频合一还是分开好的专业解析与适用场景探讨》关于双频路由器的“双频合一”与“分开使用”两种模式,用户往往存在诸多疑问,本文将从多个维度深入探讨这两种模式的优缺点,... 在如今“没有WiFi就等于与世隔绝”的时代,越来越多家庭、办公室都开始配置双频无线路由器。但你有没有注