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

相关文章

python判断文件是否存在常用的几种方式

《python判断文件是否存在常用的几种方式》在Python中我们在读写文件之前,首先要做的事情就是判断文件是否存在,否则很容易发生错误的情况,:本文主要介绍python判断文件是否存在常用的几种... 目录1. 使用 os.path.exists()2. 使用 os.path.isfile()3. 使用

SpringBoot服务获取Pod当前IP的两种方案

《SpringBoot服务获取Pod当前IP的两种方案》在Kubernetes集群中,SpringBoot服务获取Pod当前IP的方案主要有两种,通过环境变量注入或通过Java代码动态获取网络接口IP... 目录方案一:通过 Kubernetes Downward API 注入环境变量原理步骤方案二:通过

全屋WiFi 7无死角! 华硕 RP-BE58无线信号放大器体验测评

《全屋WiFi7无死角!华硕RP-BE58无线信号放大器体验测评》家里网络总是有很多死角没有网,我决定入手一台支持Mesh组网的WiFi7路由系统以彻底解决网络覆盖问题,最终选择了一款功能非常... 自2023年WiFi 7技术标准(IEEE 802.11be)正式落地以来,这项第七代无线网络技术就以超高速

Go语言如何判断两张图片的相似度

《Go语言如何判断两张图片的相似度》这篇文章主要为大家详细介绍了Go语言如何中实现判断两张图片的相似度的两种方法,文中的示例代码讲解详细,感兴趣的小伙伴可以跟随小编一起学习一下... 在介绍技术细节前,我们先来看看图片对比在哪些场景下可以用得到:图片去重:自动删除重复图片,为存储空间"瘦身"。想象你是一个

Android学习总结之Java和kotlin区别超详细分析

《Android学习总结之Java和kotlin区别超详细分析》Java和Kotlin都是用于Android开发的编程语言,它们各自具有独特的特点和优势,:本文主要介绍Android学习总结之Ja... 目录一、空安全机制真题 1:Kotlin 如何解决 Java 的 NullPointerExceptio

Python如何判断字符串中是否包含特殊字符并替换

《Python如何判断字符串中是否包含特殊字符并替换》这篇文章主要为大家详细介绍了如何使用Python实现判断字符串中是否包含特殊字符并使用空字符串替换掉,文中的示例代码讲解详细,感兴趣的小伙伴可以了... 目录python判断字符串中是否包含特殊字符方法一:使用正则表达式方法二:手动检查特定字符Pytho

Linux网络配置之网桥和虚拟网络的配置指南

《Linux网络配置之网桥和虚拟网络的配置指南》这篇文章主要为大家详细介绍了Linux中配置网桥和虚拟网络的相关方法,文中的示例代码讲解详细,感兴趣的小伙伴可以跟随小编一起学习一下... 一、网桥的配置在linux系统中配置一个新的网桥主要涉及以下几个步骤:1.为yum仓库做准备,安装组件epel-re

python如何下载网络文件到本地指定文件夹

《python如何下载网络文件到本地指定文件夹》这篇文章主要为大家详细介绍了python如何实现下载网络文件到本地指定文件夹,文中的示例代码讲解详细,感兴趣的小伙伴可以跟随小编一起学习一下...  在python中下载文件到本地指定文件夹可以通过以下步骤实现,使用requests库处理HTTP请求,并结合o

Linux高并发场景下的网络参数调优实战指南

《Linux高并发场景下的网络参数调优实战指南》在高并发网络服务场景中,Linux内核的默认网络参数往往无法满足需求,导致性能瓶颈、连接超时甚至服务崩溃,本文基于真实案例分析,从参数解读、问题诊断到优... 目录一、问题背景:当并发连接遇上性能瓶颈1.1 案例环境1.2 初始参数分析二、深度诊断:连接状态与

Android NDK版本迭代与FFmpeg交叉编译完全指南

《AndroidNDK版本迭代与FFmpeg交叉编译完全指南》在Android开发中,使用NDK进行原生代码开发是一项常见需求,特别是当我们需要集成FFmpeg这样的多媒体处理库时,本文将深入分析A... 目录一、android NDK版本迭代分界线二、FFmpeg交叉编译关键注意事项三、完整编译脚本示例四