Windows Phone获取WiFi BSSID

简介: 原文:Windows Phone获取WiFi BSSID BSSID,一种特殊的Ad-hoc LAN的应用,也称为Basic Service Set (BSS),一群计算机设定相同的BSS名称,即可自成一个group。
原文: Windows Phone获取WiFi BSSID

BSSID,一种特殊的Ad-hoc LAN的应用,也称为Basic Service Set (BSS),一群计算机设定相同的BSS名称,即可自成一个group。每个BSS都会被赋予一个BSSID,它是一个长度为48位的二进制标识符,用来识别不同的BSS。其的主要优点是它可以作为过滤之用。

BSSID 是指站点的 MAC 地址,(STA)在一个接入点,(AP)在一个基础架构模式, BSS 是由 IEEE 802.11-1999 无线局域网规范定义的。这个区域唯一地定义了每个 BSS 。在一个 IBSS 中,BSSID 是一个本地管理的 IEEE MAC 地址,从一个 46 位的任意编码中产生。地址的个体/组位被设置为 0 。通用/本地地址位被设置为 1 。

以上话来自百度百科。

之前开发的时候是为了获取手机所连接的热点的MAC 地址,所以一直是寻找WiFi MAC 地址相关的API或者方法,但没有成功。

 LanIdentifier Class 

位置数据可表示为 BSSID(如果网络适配器媒体类型是无线 LAN),或不是为元组 <ChassisId, Port Number>(如果网络适配器类型是以太网)。根据 LLDP 协议表示数据。

  有关如何检索 LanIdentifier 对象表示的数据的示例,请参见 如何检索网络适配器和位置信息。  

直接贴代码吧

    string GetLanIdentifierData(LanIdentifier lanIdentifier)
      {
          string lanIdentifierData = string.Empty;
          if (lanIdentifier == null)
          {
              return lanIdentifierData;
          }

          if (lanIdentifier.InfrastructureId != null)
          {
              lanIdentifierData += "Infrastructure Type: " + lanIdentifier.InfrastructureId.Type + "\n";
              lanIdentifierData += "Infrastructure Value: ";
              var infrastructureIdValue = lanIdentifier.InfrastructureId.Value;
              foreach (var value in infrastructureIdValue)
              {
                  lanIdentifierData += value + " ";
              }
          }

          if (lanIdentifier.PortId != null)
          {
              lanIdentifierData += "\nPort Type : " + lanIdentifier.PortId.Type + "\n";
              lanIdentifierData += "Port Value: ";
              var portIdValue = lanIdentifier.PortId.Value;
              foreach (var value in portIdValue)
              {
                  lanIdentifierData += value + " ";
              }
          }

          if (lanIdentifier.NetworkAdapterId != null)
          {
              lanIdentifierData += "\nNetwork Adapter Id : " + lanIdentifier.NetworkAdapterId + "\n";
          }
          return lanIdentifierData;
      }

 其中 lanIdentifier.InfrastructureId.Value 就是BSSID了,需要取出来,并且转为16进制。

for (int i = 0; i < lanIdentifier.InfrastructureId.Value.Count; i++)
{   lanIdentifierData
+= lanIdentifier.InfrastructureId.Value[i].ToString("X2"); }

这获取的就是BSSID了,至少我获取的值与iPhone获取的值对比是一样的。

另外,IReadOnlyList<LanIdentifier> lanIdentifiers = NetworkInformation.GetLanIdentifiers(); Windows 8也支持。

希望对您有帮助。

 

目录
相关文章
|
5月前
|
安全 数据安全/隐私保护
windows10 查看已连接wifi的密码
windows10 查看已连接wifi的密码
134 0
|
8月前
|
数据安全/隐私保护 Windows
Windows系统查询遗忘的WiFi密码
Windows系统查询遗忘的WiFi密码
178 0
|
网络协议 数据安全/隐私保护 Windows
Windows Win7建立wifi热点,手机共享WIFI上网
Windows Win7建立wifi热点,手机共享WIFI上网
153 0
|
安全 数据安全/隐私保护 Windows
Windows 查看已保存wifi密码
Windows 查看已保存wifi密码
1960 0
Windows 查看已保存wifi密码
|
数据安全/隐私保护
笔记本windows7设置WIFI教程(超详细)
笔记本windows7设置WIFI教程(超详细)
1520 0
笔记本windows7设置WIFI教程(超详细)
|
安全 数据安全/隐私保护 Windows
windows查看已连接过的wifi密码
windows查看已连接过的wifi密码
650 0
windows查看已连接过的wifi密码
|
安全 数据安全/隐私保护 Windows
Windows 10 如何查看无线 (WIFI) 密码
适用于安装 Windows 10 系统的电脑 大多数无线设备都是自动连接无线网络,容易导致用户忘记无线网络密码,本文介绍了在系统中查看无线网络密码的方法,具体操作步骤如下
321 0
Windows 10 如何查看无线 (WIFI) 密码
|
Android开发 iOS开发 Windows
Windows Phone 寿终正寝了,这些经典机型你还记得吗?
不久前,随着最后一家WP手机厂商惠普宣布取消今后Windows Phone的研发计划,以及微软官方声明对WP8.1系统今后所有升级维护的终止,WP手机,作为曾经和安卓手机、苹果手机并驾齐驱的三大智能手机之一,正式寿终正寝。
1250 0
Windows Phone 寿终正寝了,这些经典机型你还记得吗?
|
XML 开发框架 前端开发
Windows Phone快速入门需掌握哪些能力
在此之前,先普及下Windows Phone的概念和开发工具的介绍。 Windows Phone是微软公司开发的手机操作系统,它将微软旗下的Xbox Live游戏、Xbox Music音乐与独特的视频体验集成至手机中。2012年6月21日,微软正式发布Windows Phone 8,采用和Windows 8相同的Windows NT内核,同时也针对市场的Windows Phone 7.5发布Windows Phone 7.8。
133 0
Windows Phone快速入门需掌握哪些能力
|
编解码 前端开发 JavaScript
Windows Phone 下开发 LBS 应用
基于位置的服务(Location Based Service,LBS),它是通过电信移动运营商的无线电通讯网络(如GSM网、CDMA网)或外部定位方式(如GPS)获取移动终端用户的位置信息(地理坐标,或大地坐标),在GIS(Geographic Information System,地理信息系统)平台的支持下,为用户提供相应服务的一种增值业务。
162 0