.NET MAUI iOS 应用的无线部署

Visual Studio 和 Visual Studio for Mac 不需要使用 USB 电缆将 iOS 设备连接到 Mac,即可部署和调试 .NET Multi-platform App UI (.NET MAUI) 应用,是通过无线方式将 .NET MAUI iOS 应用部署到设备上并进行无线调试。 为此,必须将 iOS 设备与 Mac 上的 Xcode 配对。 配对完成后,可从 Visual Studio 和 Visual Studio for Mac 的设备目标列表中选择设备。

重要

.NET MAUI iOS 应用必须先预配,然后才能部署到设备进行测试和调试。 有关详细信息,请参阅iOS 设备预配

配对 iOS 设备

执行下列步骤,配对 iOS 设备与 Mac 上的 Xcode:

  1. 确保 iOS 设备与 Mac 连接到同一无线网络。

  2. 使用 USB 数据线将 iOS 设备插入 Mac。

    注意

    首次将 iOS 设备连接到 Mac 时,需要点击设备上信任此计算机对话框中的“信任”按钮。

  3. 打开 Xcode,并单击窗口>设备和模拟器 在显示的窗口中,单击“设备”

  4. “设备和模拟器”窗口中的左栏中,选择设备。 然后,在详细信息区域选择“通过网络连接”复选框:

    Screenshot of Devices and Simulators window showing Connect via network option.

    Xcode 与 iOS 设备配对。

  5. “设备和模拟器”窗口的左栏中,已配对的连接设备旁会出现一个网络图标:

    Screenshot of Devices and Simulators window showing a paired iOS device.

  6. 断开 USB 电缆的连接,并检查设备是否保持配对状态。

Xcode 将保留配对设置,因此设备不应再次配对。

取消 iOS 设备配对

执行下列步骤,从 Mac 上的 Xcode 取消 iOS 设备配对:

  1. 确保 iOS 设备与 Mac 连接到同一无线网络。

  2. 打开 Xcode,并单击窗口>设备和模拟器 在显示的窗口中,单击“设备”

  3. “设备和模拟器”窗口的左栏中,选择已配对的设备。 然后,右键单击设备,选择“未配对设备”项。

    Screenshot of Devices and Simulators window showing a paired iOS device about to be unpaired.

部署到设备

将设备无线配对到 Xcode 后,预配的 .NET MAUI iOS 应用可以无线部署到设备。

  1. 确保 iOS 设备无线配对到 Mac 生成主机。 有关详细信息,请参阅配对 iOS 设备

  2. 在 Visual Studio 中,请确保 IDE 已与 Mac 生成主机配对。 有关详细信息,请参阅与 Mac 配对以进行 iOS 开发

  3. 在 Visual Studio 工具栏中,使用“调试目标”下拉菜单选择 “iOS 远程设备”,然后选择连接到 Mac 生成主机的设备:

    Select your remote device in Visual Studio.

  4. 在 Visual Studio 工具栏中,按绿色“开始”按钮,即可在远程设备上启动应用:

    Visual Studio iOS device debug target choice.

注意

另一种将 .NET MAUI iOS 应用部署到设备的方法是使用热重启。 热重启可从 Visual Studio 将 .NET MAUI 应用部署到 64 位本地 iOS 设备,而无需 Mac 生成主机。 有关详细信息,请参阅使用热重启部署 iOS 应用

疑难解答

  • 确保 iOS 设备与 Mac 连接到同一个网络。
  • 确保设备预配。 有关预配的详细信息,请参阅 iOS 的设备预配
  • 验证 Xcode 是否可以看到设备:
    • 在 Xcode 中,选择“窗口”>“设备和模拟器”,然后在出现的窗口中单击“设备”。 设备应当出现在“已连接”下方。
  • Ping 设备:
    • 找到设备的 IP 地址。 在设备上打开“设置”,点击“Wi-Fi”,然后点击处于活动状态的网络旁边的信息按钮。

    • 在 Mac 上,打开“终端” 并且依次键入 ping 与设备的 IP 地址。 如果 Mac 可以看到设备,那么你将收到类似于以下内容的输出:

      PING 192.168.1.107 (192.168.1.107): 56 data bytes
      64 bytes from 192.168.1.107: icmp_seq=0 ttl=64 time=121.015 ms
      64 bytes from 192.168.1.107: icmp_seq=1 ttl=64 time=28.387 ms
      64 bytes from 192.168.1.107: icmp_seq=2 ttl=64 time=49.890 ms
      64 bytes from 192.168.1.107: icmp_seq=3 ttl=64 time=72.283 ms
      

      如果出现错误,则输出将为 Request timeout for icmp_seq 0。 如果无法 ping 设备,则会阻止 Internet 控制消息协议 (ICMP),或者存在另一个连接问题。

  • 确保 62078 端口已打开。
  • 使用以太网电缆将设备连接至网络:
    • 使用闪电转 USB 相机适配器和 USB 转以太网适配器。
  • 重新配对 iOS 设备: