You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Android 13(Pixel 4)多次尝试后无法连接WiFi问题求助

问题描述

无法连接隐藏WiFi网络,多次尝试后弹出提示:

未找到设备。请确保设备已开启且可连接。

使用的代码如下:

WifiNetworkSpecifier wifiNetworkSpecifier = new WifiNetworkSpecifier.Builder()
                    .setSsid(<SSID>)
                    .setWpa2Passphrase(<Password>)
                    .setIsHiddenSsid(true)
                    .build();

NetworkRequest networkRequest = new NetworkRequest.Builder()
                    .addTransportType(NetworkCapabilities.TRANSPORT_WIFI)
                    .setNetworkSpecifier(wifiNetworkSpecifier)
                    .build();

connectivityManager.requestNetwork(networkRequest, networkCallbacks);

问题仅出现在Google Pixel 4(Android 13)设备上,相同代码在Pixel系列Android 10、11、12版本设备上运行正常。

解决方案

1. 适配Android 13的权限要求

Android 13对隐藏WiFi连接新增了强制权限约束:

  • 确保已申请并获得ACCESS_FINE_LOCATION权限,隐藏网络的扫描必须依赖精确位置权限。
  • 确认设备位置服务处于开启状态,即使App不需要获取位置信息,系统扫描隐藏WiFi也需要该服务运行。

2. 调整WifiNetworkSpecifier配置

尝试修改连接参数:

  • 移除setIsHiddenSsid(true),部分Android 13设备对该参数的处理逻辑有变更,不手动设置时系统可能自动识别隐藏网络。
  • 改用更明确的安全参数配置替换setWpa2Passphrase:
.setSecurityParams(new WifiNetworkSpecifier.Wpa2Params.Builder()
    .setPassphrase(<Password>)
    .build())

3. 主动触发WiFi扫描

Android 13可能不会自动扫描隐藏网络,需主动调用扫描接口:

WifiManager wifiManager = (WifiManager) getSystemService(Context.WIFI_SERVICE);
wifiManager.startScan();

注意:调用该方法需要ACCESS_FINE_LOCATION和CHANGE_WIFI_STATE权限,且Android 12+系统会限制扫描频率,避免频繁调用。

4. 修复系统层面问题

针对Pixel 4 Android 13的特定Bug:

  • 升级系统到最新补丁版本,部分WiFi连接问题已在后续更新中修复。
  • 重置网络设置(设置→系统→重置→重置网络设置),清除旧的WiFi配置后重新尝试连接。

内容的提问来源于stack exchange,提问作者Shanmugapriyan

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.30 11:22:11