【问题标题】:Wifi Direct P2P not working on Android 10+ devices, Unable to discover devicesWifi Direct P2P 无法在 Android 10+ 设备上运行,无法发现设备
【发布时间】:2020-12-13 06:21:09
【问题描述】:

您好,我正在开发需要使用 Wi-fi Direct 连接设备的设备。我的代码在所有设备上都有效,但对于 Android 10+ 设备,发现一直失败。

我隐式和显式地请求所需的权限。

在清单中我要求这些权限。

        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.ACCESS_WIFI_STATE"
        android:required="true" />
    <uses-permission
        android:name="android.permission.CHANGE_WIFI_STATE"
        android:required="true" />

我也明确要求这些权限。

这是我正在尝试的代码 [适用于 Android 10+ 以下的所有设备]

private void discoverWifi() {

      if (ActivityCompat.checkSelfPermission(context, Manifest.permission.ACCESS_FINE_LOCATION) !=  
           PackageManager.PERMISSION_GRANTED) {
            return;
        }
        wifiP2pManager.discoverPeers(wifiChannel, new WifiP2pManager.ActionListener() {
            @Override
            public void onSuccess() {
                connectionStatus.setText("Discover Start");
            }
    
            @Override
            public void onFailure(int i) {
                connectionStatus.setText("Discover not Start");
            }
        });
    } 

【问题讨论】:

  • 有人可以帮忙吗?
  • 你在onFailure里面得到了什么错误代码?
  • 我在模拟器的 onFailure 中收到错误代码 2。
  • 有人请吗??
  • 错误代码2对应WifiP2pManager .BUSY。我很确定,模拟器不支持 P2P。你有真实的设备来测试吗?

标签: android android-10.0 wifi-direct wifip2p android-11


【解决方案1】:

在 Android 10+ 设备上,您应该打开位置,否则发现将失败

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2015-01-05
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2018-11-01
    • 2021-02-12
    • 2020-11-16
    • 1970-01-01
    相关资源
    最近更新 更多