Android10+的Wifi-API真的有这么糟糕吗?
创始人
2024-08-20 07:30:14
0

以下是使用Android 10+的Wifi-API时可能遇到的问题以及解决方案。

问题1:调用WifiManager.getConnectionInfo().getBSSID()时返回的结果为null。

解决方案:在Android 10+中,为了保护用户的隐私,连接到Wifi时MAC地址被隐藏了。因此,调用getBSSID()将返回null。要获取MAC地址,您可以使用NetworkCapabilities.getTransportInfo().getPhysicalAddress()。

示例代码:

private String getMacAddress(Network network) { NetworkCapabilities capabilities = connectivityManager.getNetworkCapabilities(network); LinkProperties linkProperties = connectivityManager.getLinkProperties(network);

if (capabilities.hasTransport(NetworkCapabilities.TRANSPORT_WIFI) && linkProperties != null) {
    return linkProperties.getLinkAddresses().stream()
            .filter(la -> la.getAddress() instanceof Inet4Address)
            .findFirst()
            .map(la -> {
                try {
                    Method method = la.getClass().getMethod("getFlags");
                    int flags = (int) method.invoke(la);

                    if ((flags & (1 << 0)) == 0) {
                        return null;
                    }

                    return capabilities.getTransportInfo().getPhysicalAddress();
                } catch (Exception e) {
                    return null;
                }
            })
            .orElse(null);
}

return null;

}

问题2:Android 10+中的WifiScanResult的SSID和BSSID被隐藏。

解决方案:在Android 10+中,为了保护用户的隐私,WifiScanResult的SSID和BSSID也被隐藏了。你可以使用WifiNetworkSuggestion来获取SSID和BSSID。

示例代码:

private List getWifiSsidList() { List ssidList = new ArrayList<>(); List suggestionsList = wifiManager.getWifiNetworkSuggestions();

for (WifiNetworkSuggestion suggestion : suggestionsList) {
    ssidList.add(suggestion.getSsid());
}
return ssidList;

}

问题3:Android 10+中WifiP2pManager,WifiManager和WifiEnterpriseConfig api被修改。

解决

相关内容

热门资讯

黑科技脚本(微扑克模拟器)We... 黑科技脚本(微扑克模拟器)WepOke本来真的是有挂!太实锤了其实是真的有挂(2022已更新)(哔哩...
黑科技智能ai(Wepoke苹... 《黑科技智能ai(Wepoke苹果)来玩app德州扑克起初有挂!太坑了素来存在有挂(2024已更新)...
黑科技了解(Wepoke德州)... 黑科技了解(Wepoke德州)aapOker往昔有挂!太实锤了切实真的有挂(2026已更新)(哔哩哔...
黑科技科技(Wepoke技术)... 黑科技科技(Wepoke技术)fishpoker俱乐部一向真的是有挂!太夸张了从来真的是有挂(202...
黑科技了解(Wepoke安装)... 1、黑科技了解(Wepoke安装)菠萝德州app起初是有挂!太离谱了确实是真的有挂(2022已更新)...
黑科技教程(微扑克开发)Wep... 黑科技教程(微扑克开发)WepoKe固有真的有挂!太离谱了一向是有挂(2022已更新)(哔哩哔哩),...
黑科技挂(德扑之星代打)德州a... 黑科技挂(德扑之星代打)德州aapoker总是存在有挂!太无语了确实存在有挂(2023已更新)(哔哩...
黑科技软件(微扑克模拟器)We... 黑科技软件(微扑克模拟器)WepOke本来真的是有挂!太实锤了原先存在有挂(2026已更新)(哔哩哔...
黑科技ai(wepoke辅助挂... 您好,wePOke这款游戏可以开挂的,确实是有挂的,需要了解加微【136704302】很多玩家在这款...
黑科技插件(we-poke)德... 黑科技插件(we-poke)德州wepower一直是真的有挂!太无语了原先是真的有挂(2026已更新...