使用 .NET CLI 生成 iOS 应用

本教程介绍如何使用 macOS 上的 .NET 命令行接口 (CLI) 在 iOS 上创建和运行 .NET 多平台应用 UI (.NET MAUI) 应用:

  1. 若要创建 .NET MAUI 应用,需要下载并运行最新 .NET 运行时的 安装程序 。 还需要下载并安装所使用的 .NET MAUI 版本所需的 Xcode 版本。 有关信息,请参阅 发布版本

  2. 在 Mac 上,打开 终端 并检查是否已安装最新的 .NET 运行时:

    dotnet --version
    
  3. 终端中,安装 .NET MAUI 的最新公共版本:

    sudo dotnet workload install maui --source https://api.nuget.org/v3/index.json
    

    此命令将安装最新发布的 .NET MAUI 版本,包括所需的平台 SDK。

  4. 终端中,使用 .NET CLI 创建新的 .NET MAUI 应用:

    dotnet new maui -n "MyMauiApp"
    
  1. 终端中,将目录更改为 MyMauiApp,然后生成并运行应用:

    cd MyMauiApp
    dotnet build -t:Run -f net8.0-ios
    

    dotnet build 命令将还原项目依赖项,生成应用,并在默认模拟器中启动它。

  2. 在默认模拟器中,多次按 “单击我” 按钮,并观察按钮单击次数的计数递增。

    在默认 iOS 模拟器中运行的 .NET MAUI 应用。

使用特定版本的 Xcode 生成

如果在 Mac 上安装了多个版本的 Xcode,则可以指定生成应用时应使用哪个 Xcode 版本。 有许多方法可用于实现此目的,但有两种建议的方法:

  1. 用于 sudo xcode-select --switch ... 选择系统当前选定的 Xcode 版本(这需要管理员凭据)。 也可以从 Xcode 内部执行此作(设置 -> 位置 -> 命令行工具)。

  2. DEVELOPER_DIR 当前终端会话的持续时间内使用环境变量:

    1. 打开 终端 应用程序。

    2. 键入以下命令,替换 Xcode 版本,然后按 Enter:

      export DEVELOPER_DIR=/Applications/Xcode_14.1.0.app
      

    如果要永久设置此环境变量,可以将命令添加到 export shell 配置文件,例如 .zprofile

在特定模拟器上启动应用

可以通过提供其唯一设备 ID(UDID):从 Mac 在特定 iOS 模拟器上启动 .NET MAUI iOS 应用:

  1. 在 Mac 上,打开 Xcode,选择 Windows > 设备和模拟器 菜单项,然后选择“ 模拟器 ”选项卡。

    Xcode 模拟器选项卡的屏幕截图。

  2. 右键单击所选模拟器,然后选择 “复制标识符 ”以将 UDID 复制到剪贴板。

    Xcode 中复制标识符菜单选项的屏幕截图。

    或者,可以通过执行 simctl list 命令来检索 UDID 值的列表:

    /Applications/Xcode.app/Contents/Developer/usr/bin/simctl list
    
  1. 终端中,使用 _DeviceName-p指定 MSBuild 属性,生成应用并在所选模拟器上运行它:

    dotnet build -t:Run -f net8.0-ios -p:_DeviceName=:v2:udid=MY_SPECIFIC_UDID
    

    例如,使用以下命令生成应用并在 iPhone 13 Pro 模拟器上运行它:

    dotnet build -t:Run -f net8.0-ios -p:_DeviceName=:v2:udid=E25BBE37-69BA-4720-B6FD-D54C97791E79
    
  2. 在所选模拟器中,多次按 “单击我” 按钮,并观察按钮单击次数的计数递增。

    在 iPhone 13 Pro 模拟器中运行的 .NET MAUI 应用。

在设备上启动应用

必须先预配设备,然后才能将 iOS 应用部署到该设备。 有关详细信息,请参阅iOS 设备预配。 预配设备后,可以通过提供其唯一设备 ID(UDID):从 Mac 在设备上启动 .NET MAUI iOS 应用:

  1. 使用 USB 电缆将设备连接到本地 Mac。

  2. 打开 Xcode,并导航到 窗口 > 设备和模拟器

  3. Xcode 中,选择 “设备 ”选项卡,然后从连接的设备列表中选择设备。

  4. Xcode 中,将 标识符 值复制到剪贴板:

    Xcode 设备和模拟器窗口,突出显示 iOS 标识符字符串位置。

    或者,右键单击设备并选择 “复制标识符 ”,将 UDID 复制到剪贴板。

  1. 终端中,使用 _DeviceName-p指定 MSBuild 属性,生成应用并在所选设备上运行它:

    dotnet build -t:Run -f net8.0-ios -p:RuntimeIdentifier=ios-arm64 -p:_DeviceName=MY_SPECIFIC_UDID
    

    将“MY_SPECIFIC_UDID”替换为复制到剪贴板的设备标识符。