gpt4 book ai didi

java - 尽管手机已连接,WifiInfo.getBSSID() 仅返回 null

转载 作者:行者123 更新时间:2023-12-01 08:54:51 25 4
gpt4 key购买 nike

我需要找到我所连接的 AP 的 MacAddress。做了一些研究,最后为了做到这一点,我使用了以下线程中的一个 fragment :Wifi getSSID() returns null

代码如下所示:

String mac = "02:00:00:00:00:00";
WifiManager wifiMgr = (WifiManager) getApplicationContext().getSystemService(WIFI_SERVICE);
while(mac.equals("02:00:00:00:00:00")) {
WifiInfo wifiInfo = wifiMgr.getConnectionInfo();
mac = wifiInfo.getBSSID();
Log.d("Wifi", "WifiInfo : " + wifiInfo.toString());
}
Log.d("Wifi", "YAY!" + mac);

(我是这样写的,这样如果由于某种原因它返回 null,它会重做直到它返回其他东西,因为根据一些答案,它并不总是一致的)

不幸的是,输出总是:D/Wifi: WifiInfo: SSID: , BSSID: 02:00:00:00:00:00, MAC: 02:00:00:00:00:00,请求方状态:已完成,RSSI:-74,链路速度:58Mbps,Tx 链路速度:58Mbps,Rx 链路速度:-1Mbps,频率:2412MHz,网络 ID:-1,计量提示:false,GigaAp:false,VenueName:null , WifiMode: 4, HotspotLiveAp: false, 分数: 55

list 具有必要的权限(根据一些线程,可能缺少某些内容):

<uses-permission android:name = "android.permission.ACCESS_WIFI_STATE" android:required="true" />
<uses-permission android:name="android.permission.ACCESS_NETWORK_STATE" android:required="true" />
<uses-permission android:name="android.permission.ACCESS_FINE_LOCATION" android:required="true" />
<uses-permission android:name="android.permission.ACCESS_COARSE_LOCATION" android:required="true" />
<uses-permission android:name="android.permission.INTERNET" android:required="true" />

为了查看问题是否出在外部,我在手机上下载了一个 WifiAnalyzer,但它正确显示了我附近的 AP 的 mac 以及我在运行我的应用程序时连接到的 Mac,所以问题无法解决在 AP 设置或任何地方。

多个线程讨论了相似但不相同的问题: Wifi getSSID() returns null Why WifiConfiguration.BSSID is always null? How to get BSSID of all wifi access points?

但是他们要么没有得到回答,要么专注于问题的不同方面,要么答案不起作用,而且它们都相当陈旧。

长话短说我想要我的手机连接到的 AP 的 mac 地址,但 getBSSID() 总是返回 null。

最佳答案

嗯,原来答案不在代码中。无论您的权限如何,在 Android 10 中您都需要进入设置并允许您的应用访问位置,否则 getBSSID() 将返回“02:00:00:00:00:00”,因此如果您希望这样做自动地,通过应用程序而不是在坐席中手动,您需要添加将更改设备设置的权限弹出窗口。至于怎么做我相信有教程,同时我的问题已经解决了。

关于java - 尽管手机已连接,WifiInfo.getBSSID() 仅返回 null,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/61171741/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com