android获取wifi的ssid和ip

话不多说,直接上代码

WifiManager wifi = (WifiManager) MainActivity.context
				.getSystemService(Context.WIFI_SERVICE);
WifiInfo info = wifi.getConnectionInfo();

if (info != null && info.getMacAddress() != null)

	ssidString = info.getSSID();

不过要申请下权限,在AndroidManifest.xml中添加

<uses-permission android:name="android.permission.ACCESS_WIFI_STATE"></uses-permission>

获取ip地址

public static String get_wifi_ip()
	{
		int ip ;
		
		if (info() == null)
			return "";
		
		ip = info().getIpAddress();
		return intToIp(ip);
	}
	

private static String intToIp(int i) {       
        
        return (i & 0xFF ) + "." +       
      ((i >> 8 ) & 0xFF) + "." +       
      ((i >> 16 ) & 0xFF) + "." +       
      ( i >> 24 & 0xFF) ;  
   }


获取Android设备的Wi-Fi所有信息,可以使用以下代码: 1. 在AndroidManifest.xml文件中添加以下权限: ```xml <uses-permission android:name="android.permission.ACCESS_WIFI_STATE" /> <uses-permission android:name="android.permission.ACCESS_NETWORK_STATE" /> ``` 2. 在代码中使用以下代码获取Wi-Fi所有信息: ```java WifiManager wifiManager = (WifiManager) getSystemService(Context.WIFI_SERVICE); WifiInfo wifiInfo = wifiManager.getConnectionInfo(); String ssid = wifiInfo.getSSID(); // 获取SSID String bssid = wifiInfo.getBSSID(); // 获取BSSID int ip = wifiInfo.getIpAddress(); // 获取IP地址 int networkId = wifiInfo.getNetworkId(); // 获取网络ID int speed = wifiInfo.getLinkSpeed(); // 获取连接速度 String macAddress = wifiInfo.getMacAddress(); // 获取MAC地址 int frequency = wifiInfo.getFrequency(); // 获取频率 int signalStrength = wifiInfo.getRssi(); // 获取信号强度 int signalLevel = WifiManager.calculateSignalLevel(signalStrength, 5); // 获取信号等级 String networkTypeName = getNetworkTypeName(wifiInfo.getNetworkType()); // 获取网络类型名称 String dhcpInfo = wifiManager.getDhcpInfo().toString(); // 获取DHCP信息 String supplicantStateName = wifiInfo.getSupplicantState().name(); // 获取当前连接状态 // 获取所有扫描到的Wi-Fi信息 List<ScanResult> scanResults = wifiManager.getScanResults(); for (ScanResult scanResult : scanResults) { String scanResultSsid = scanResult.SSID; // 获取SSID String scanResultBssid = scanResult.BSSID; // 获取BSSID int scanResultFrequency = scanResult.frequency; // 获取频率 int scanResultLevel = scanResult.level; // 获取信号强度 } ``` 注意:需要在AndroidManifest.xml文件中添加权限才能获取Wi-Fi信息。另外,获取到的信息可能不是实时的,需要根据实际情况进行判断和处理。
评论 4
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值