在 Windows 10 IoT 核心版设备上使用 WiFi Direct

通过使用已启用 WiFi Direct 的 USB WiFi 适配器,Windows 10 IoT 核心版设备上支持 WiFi Direct。 若要确保 WiFi Direct 已启用,需要确保符合下面两项要求:

  • USB WiFi 适配器的硬件需要支持 WiFi Direct,
  • USB WiFi 适配器的相应驱动程序需要支持 WiFi Direct。

WiFi Direct 提供一个解决方案来实现 WiFi 设备到设备连接,无需使用无线接入点(无线 AP)来设置连接。 如要查看可使用 WiFiDirect 执行哪些操作,请查看 Windows。Devices.WiFiDirect 命名空间中提供的 UWP API。

支持的适配器

如需已在 Windows 10 IoT 核心版上进行测试的 WiFi 适配器的列表,可查看支持的硬件页面。

WiFi Direct 的基本示例

可使用 WiFi Direct UWP 示例轻松测试 WiFi Direct 功能。 我们将使用 C# 版本并运行两台设备的示例。

设置两台设备

  • 运行 Windows 10 IoT 核心版的 MinnowBoardMax (MBM)(请参阅此处的说明),带有 CanaKit WiFi 适配器
  • 将显示器、键盘和鼠标连接到 MBM
  • 运行最新的 Windows 10 周年最新的 Windows 10 电脑。 电脑(或笔记本电脑)需要具有 WiFi Direct 支持(例如 Microsoft Surface)
  • 在 Windows 10 电脑上安装 Visual Studio 2017
  • 克隆或下载 WiFi Direct UWP 示例此处是 GitHub 存储库的根目录)。
  • 在 Visual Studio 2017 中加载 WiFi Direct UWP 示例的 C# 版本

在两台设备上运行示例

  • 编译示例,在 MBM 上部署/运行它:

    • 将“解决方案平台”组合框设置为“x86”
    • 从“运行”下拉列表中选择“远程计算机”
    • 在 MBM 上启动示例但不调试(按 Ctrl-F5,或者从“调试”菜单中选择“启动(不调试)”)
    • 应该会看到 WiFi Direct 示例在连接到 MBM 的显示器上运行
  • 编译示例,并在 Windows 10 电脑上部署/运行它:

    • 将“解决方案平台”组合框设置为“x86”
    • 从“运行”下拉列表中选择“本地”
    • 启动示例(按 F5 或 Ctrl-F5)
    • 应该会看到 WiFi Direct 示例在 Windows 10 电脑上运行

设置播发程序和连接器

  • 在 MBM 上,选择 (1)“播发程序”并按“开始播发”按钮

    • MBM 将在 WiFi Direct 信道上开始播发自己

      播发程序配置屏幕

      请注意应用底部的“播发状态”横幅。

  • 在 Windows 10 电脑上,选择 (2)“连接器”并按“启动观察程序”按钮

    • Windows 10 电脑将开始扫描可用的 WiFi Direct 连接

    • 扫描完成后,应该会在“发现的设备”列表中看到你的 MBM 的名称

      连接器配置屏幕

      可以看到列出了两台设备(我们对“ale-mbm01”感兴趣),还有“DeviceWatcher 枚举已完成”消息。

将设备配对

  • 在 Windows 10 电脑上,从“发现的设备”列表中选择 MBM(此示例中为“ale-mbm01”),并按“连接”按钮

  • 在 Windows 10 电脑上,按“是”以启动配对过程

    连接器开始配对

  • 在 MBM 显示器上,应该会显示一条包含 PIN 的消息

    播发程序 PIN 对话框

  • 在 Windows 10 电脑上,应会看到一个需要在其中输入 PIN 的对话框

    连接器 PIN 对话框

在信道上通信

  • 两台设备应该已经连接。 在“已连接的设备”列表的两个屏幕上,应会看到随机生成的设备 ID(此示例中为“hqffpzhz.ggg”)

    播发程序连接的设备

    连接程序连接的设备

  • 现在,你已设置全双工信道(或套接字)

    • 在 MBM 上,从“已连接的设备”列表中选择设备(“hqffpzhz.ggg”)
    • 在“输入消息”文本框中键入消息
    • 按“发送”按钮
    • 应该会看到从 Windows 10 电脑中收到的消息
    • 尝试将来自 Windows 10 电脑的消息发送到 MBM