与 Mac 配对进行 iOS 开发

您所在的位置:网站首页 iOS与mac数据线连接 与 Mac 配对进行 iOS 开发

与 Mac 配对进行 iOS 开发

2023-08-27 21:30| 来源: 网络整理| 查看: 265

与 Mac 配对进行 iOS 开发 项目 05/05/2023

使用 .NET 多平台应用 UI (.NET MAUI) 生成本机 iOS 应用程序需要访问 Apple 的生成工具,这些工具仅在 Mac 上运行。 因此,Visual Studio 2022 必须连接到可访问网络的 Mac 才能生成 .NET MAUI iOS 应用。

Visual Studio 2022 的“与 Mac 配对”功能可发现、连接到 Mac 生成主机、使用 Mac 生成主机进行身份验证并记住主机,以便你可以在 Windows 上高效工作。

“与 Mac 配对”可启用以下软件开发工作流:

可以在 Visual Studio 2022 中编写 .NET MAUI iOS 代码。 Visual Studio 2022 打开与 Mac 生成主机的网络连接,并使用该计算机上的生成工具编译和签名 iOS 应用。 无需在 Mac 上运行单独的应用程序 - Visual Studio 2022 通过 SSH 安全地调用 Mac 生成。 发生更改后,Visual Studio 2022 会立即收到通知。 例如,当 iOS 设备插入 Mac 或在网络上可用时,iOS 工具栏会立即更新。 Visual Studio 2022 的多个实例可以同时连接到 Mac。 可以使用 Windows 命令行生成 iOS 应用。

注意

在按照本文中的说明操作之前,请在 Mac 上安装 Xcode。 然后,在安装后手动打开 Xcode,以便它可以添加其他组件。 此外,还应安装最新的 Visual Studio 2022 for Mac 或 Mono。 此外,如果你有一台装有 Apple silicon 的 Mac 计算机,请确保已安装 Rosetta。

如果不想安装 Visual Studio 2022 for Mac,Visual Studio 2022 可以自动配置 Mac 生成主机。 但是,仍必须安装并运行 Xcode,并安装 Mono。

启用 Mac 上的远程登录

若要设置 Mac 生成主机,首先启用远程登录:

在 Mac 上,打开 “系统首选项” 并转到“ 共享 ”窗格。

选中“服务”列表中的“远程登录” 。

确保将其配置为允许 所有用户访问,或者 Mac 用户名或组包含在允许的用户列表中。

如果出现提示,请配置 macOS 防火墙。 如果将 macOS 防火墙默认设置为阻止传入的连接,则可能需要允许 mono-sgen 接收传入的连接。 如果出现警报,则会提示你。

如果 Mac 与 Windows 计算机位于同一网络上,则 Visual Studio 2022 现在应可发现 Mac。 如果 Mac 仍不可发现,请尝试 手动添加 Mac。

从 Visual Studio 2022 连接到 Mac

在 Mac 上启用远程登录后,将 Visual Studio 2022 连接到 Mac:

在 Visual Studio 2022 中,打开现有的 .NET MAUI 项目或创建一个新项目。

使用“ 与 Mac 配对 ”按钮 iOS 工具栏打开“ 与 Mac 配对 ”对话框:

或者,选择 “工具” > “iOS > 与 Mac 配对”。

“ 与 Mac 配对 ”对话框显示所有以前连接和当前可用的 Mac 生成主机的列表:

在列表中选择 Mac,然后选择“ 连接”。

输入用户名和密码。 首次连接到任何特定 Mac 时,系统会提示你输入该计算机的用户名和密码:

提示

登录时,请使用系统用户名。

“与 Mac 配对”使用这些凭据创建到 Mac 的新 SSH 连接。 如果成功,会向 Mac 上的 authorized_keys 文件中添加一个密钥。 与同一 Mac 的后续连接将自动登录。

“与 Mac 配对”会自动配置 Mac。 Visual Studio 2022 根据需要在连接的 Mac 生成主机上安装或更新先决条件。 但是,Xcode 仍必须手动安装。

检查连接状态图标。 当 Visual Studio 2022 连接到 Mac 时,“ 与 Mac 配对 ”对话框中的 Mac 项将显示一个图标,指示它当前已连接:

一次只能连接一个 Mac。

提示

右键单击“与 Mac 配对”列表中的任意 Mac 会打开上下文菜单,可在菜单中选择“连接...”、“忘记此 Mac”或“断开连接” :

如果选择“忘记此 Mac”,系统将忘记所选 Mac 的凭据。 若要重新连接到此 Mac,将需要重新输入用户名和密码。

如果已成功配对到 Mac 生成主机,则可以在 Visual Studio 2022 中生成 .NET MAUI iOS 应用。 有关详细信息,请参阅 生成第一个应用。

如果无法配对 Mac,请尝试 手动添加 Mac。

手动添加 Mac

如果“ 与 Mac 配对 ”对话框中未列出特定 Mac,请手动添加:

在 Mac 上打开 “系统首选项 > 共享 > 远程登录” ,找到 Mac 的 IP 地址:

或者,使用命令行。 在 终端中,发出以下命令:

ipconfig getifaddr en0

根据网络配置,可能需要使用 除 以外的 en0接口名称,例如 或 en1en2。

在 Visual Studio 2022 的“ 与 Mac 配对 ”对话框中,选择“ 添加 Mac...”:

输入 Mac 的 IP 地址,然后选择“ 添加”:

为 Mac 输入用户名和密码:

提示

登录时,请使用系统用户名。

选择“ 登录 ”,通过 SSH 将 Visual Studio 2022 连接到 Mac,并将其添加到已知计算机列表。

启用与已知 Mac 的自动连接

默认情况下,Visual Studio 启动时不会建立与以前配对的 Mac 的连接。 但是,可以通过导航到 “工具 > ”“选项 > ”“Xamarin > iOS 设置” ,并确保选中 “启用与已知 Mac 的自动连接 ”,在 Visual Studio 中启用与已知 Mac 的自动连接:

重启 Visual Studio 后,它将在每次启动时自动连接到已知的 Mac。

自动预配 Mac

与 Mac 配对会自动为 Mac 预配生成 .NET MAUI iOS 应用所需的软件。 这包括 .NET 和各种 Xcode 相关工具, (但 Xcode 本身) 。

重要

与 Mac 配对无法安装 Xcode。 必须在 Mac 生成主机上手动安装它。 这是 .NET MAUI iOS 开发所必需的。 自动预配 Mac 需要在 Mac 上启用远程登录,并且 Windows 计算机必须能够通过网络访问该 Mac。 自动 Mac 预配要求 Mac 上有足够的可用空间来安装 .NET。

此外,当 Visual Studio 2022 连接到 Mac 时,“配对到 Mac”将执行所需的软件安装和更新。

Xcode 工具和许可证

“与 Mac 配对”还检查以确定是否已安装 Xcode 并接受其许可证。 虽然“与 Mac 配对”不会安装 Xcode,但它会提示接受许可证。

此外,“与 Mac 配对”将安装或更新通过 Xcode 分发的各种包。 这些包安装迅速,不出现提示。

自动预配 Mac 疑难解答

如果在使用自动 Mac 预配时遇到问题,请查看存储在 %LOCALAPPDATA%\Xamarin\Logs\17.0 中的 Visual Studio 2022 IDE 日志。 这些日志可能包含错误消息,可帮助更好地诊断失败或获取支持。

从 Windows 命令行生成 iOS 应用

与 Mac 配对支持从命令行生成 .NET MAUI 应用。 导航到保存 .NET MAUI iOS 应用源的文件夹,并执行以下命令:

dotnet build -f net7.0-ios -p:ServerAddress={macOS build host IP address} -p:ServerUser={macOS username} -p:ServerPassword={macOS password} -p:TcpPort=58181 -p:_DotNetRootRemoteDirectory=/Users/{macOS username}/Library/Caches/Xamarin/XMA/SDKs/dotnet/

上面的示例中传递到 dotnet 的参数有:

ServerAddress – Mac 生成主机的 IP 地址。 ServerUser – 登录 Mac 生成主机时要使用的用户名。 使用系统用户名而不是全名。 ServerPassword – 登录 Mac 生成主机时要使用的密码。 _DotNetRootRemoteDirectory - Mac 生成主机上包含 .NET SDK 的文件夹。

首次从 Visual Studio 2022 或命令行登录到 Mac 生成主机时,将设置 SSH 密钥。 使用这些密钥,将来的登录不需要用户名或密码。 新创建的密钥存储在 %LOCALAPPDATA%\Xamarin\MonoTouch。

如果从命令行生成调用中省略 ServerPassword 参数,“与 Mac 配对”会尝试使用保存的 SSH 密钥登录到 Mac 生成主机。



【本文地址】


今日新闻


推荐新闻


CopyRight 2018-2019 办公设备维修网 版权所有 豫ICP备15022753号-3