部署和测试

.NET Multi-platform App UI (.NET MAUI) 使用单项目系统来管理跨平台应用的配置。 此配置包含用于控制每个平台上生成和打包应用的属性和设置。 有关详细信息,请参阅 .NET MAUI 应用的项目配置

单元测试将检查应用中的每个功能单元是否按预期执行,以防错误在整个应用中传播。 单元测试取应用的一个小单元,通常是一个方法,将其与代码的其余部分隔离开,并验证其行为是否符合预期。 有关详细信息,请参阅单元测试

有许多技术可用于提高 .NET MAUI 应用的性能和感知性能。 这些方法可以极大降低 CPU 执行的工作量和应用使用的内存量。 有关详细信息,请参阅改进应用性能

生成应用时,.NET MAUI 可以使用名为 ILLink 的链接器,通过称为剪裁的技术来减小应用的整体大小。 ILLink 通过分析编译器生成的中间代码缩减大小。 它删除未使用的方法、属性、字段、事件、结构和类,以生成仅包含运行应用所需的代码和程序集依赖项的应用。 有关详细信息,请参阅 剪裁 .NET MAUI 应用

Android

可以在 Android 模拟器上调试和测试应用,该模拟器可在各种配置中运行以模拟不同的设备。 每个配置称为虚拟设备。 在该仿真器上部署和测试应用时,可以选择预配置或自定义的虚拟设备来模拟如 Pixel 手机之类的物理 Android 设备。 有关详细信息,请参阅在 Android 模拟器上调试

虽然 Android 模拟器支持快速开发和测试应用,但还需在真实 Android 设备上测试应用。 要在设备上运行,需要在设备上启用开发人员模式并将其连接到开发计算机。 有关详细信息,请参阅设置 Android 设备进行调试

分发适用于 Android 的 .NET MAUI 应用时,会生成 Android 包 (APK) 或 Android 应用包 (AAB) 文件。 APK 用于将应用安装到 Android 设备,而 AAB 用于将应用发布到 Android 应用商店。 只需对项目进行一些配置更改,即可打包应用以进行分发。 有关详细信息,请参阅发布适用于 Android 的 .NET MAUI 应用

iOS

使用 .NET MAUI 生成本机 iOS 应用需要仅在 Mac 上运行的 Apple 生成工具的访问权限。 因此,必须将 Visual Studio 连接到可访问网络的 Mac 才能生成 .NET MAUI iOS 应用。 Visual Studio 的“与 Mac 配对”功能可发现、连接、验证和记住 Mac 生成主机,帮助用户在 Windows 上高效工作。 有关详细信息,请参阅与 Mac 配对以进行 iOS 开发

结合使用“与 Mac 配对”时,适用于 Windows 的远程 iOS 模拟器支持在 Windows 中显示的 iOS 模拟器以及 Visual Studio 中测试应用。 有关详细信息,请参阅适用于 Windows 的远程 iOS 模拟器

开发 .NET MAUI iOS 应用时,除了模拟器之外,还必须通过将应用部署到物理设备来测试它。 由于内存或网络连接等硬件限制,在设备上运行时,可能会出现仅限设备的 Bug 和性能问题。 要在物理设备上测试应用,必须预配该设备,并且必须将使用该设备进行测试的事件通知给 Apple。 有关设备预配的详细信息,请参阅 iOS 设备预配

Visual Studio 不需要使用 USB 线将 iOS 设备连接到 Mac,即可部署和调试 .NET MAUI 应用,是通过无线方式将 .NET MAUI iOS 应用部署到设备上并进行无线调试。 有关详细信息,请参阅 .NET MAUI iOS 应用无线部署

或者通过热重启,可以从 Visual Studio 快速将 iOS 应用部署到 64 位本地设备,而无需 Mac 生成主机。 它还消除了对完整包重新生成的需求,方法是将新更改推送到本地连接的 iOS 设备上已有的现有应用程序包。 它支持对代码文件、资源和项目引用的更改,使你能够在开发过程中快速测试对应用所做的更改。 有关详细信息,请参阅使用热重启将 iOS 应用部署到本地设备

分发适用于 iOS 的 .NET MAUI 应用时,会生成一个 .ipa 文件。 .ipa 文件是存储 iOS 应用的 iOS 应用存档文件。 在 iOS 上分发 .NET MAUI 应用需要使用预配配置文件预配应用。 预配配置文件是一种包含了代码签名信息,以及应用程序标识和预期分发机制的文件。 有关发布适用于 iOS 的 .NET MAUI 应用的详细信息,请参阅发布适用于 iOS 的 .NET MAUI 应用

在 iOS 上,.NET MAUI 应用在沙盒中运行,该沙盒提供一组限制在应用与系统资源或用户数据之间进行访问的规则。 Apple 提供各种功能,也称为“App 服务”,作为扩展功能和拓宽 iOS 应用功能范围的一种方式。 这些功能将被添加到应用的预配配置文件中,并在对应用进行代码签名时使用。 有关详细信息,请参阅功能

Mac Catalyst

分发 .NET MAUI Mac Catalyst 应用时,会生成 .app 或 .pkg 文件。 .app 文件是独立应用,无需安装即可运行,而 .pkg 是安装程序中的打包应用。 分发 .NET MAUI Mac Catalyst 应用需要使用预配配置文件预配应用。 预配配置文件是一种包含了代码签名信息,以及应用程序标识和预期分发机制的文件。 有关发布 .NET MAUI Mac Catalyst 应用的详细信息,请参阅发布 .NET MAUI Mac Catalyst 应用

在 Mac Catalyst 上,.NET MAUI 应用在沙盒中运行,该沙盒提供一组规则,用于限制应用与系统资源或用户数据之间的访问。 Apple 提供各种功能,也称为“App 服务”,作为扩展功能和拓宽 iOS 应用功能范围的一种方式。 这些功能将被添加到应用的预配配置文件中,并在对应用进行代码签名时使用。 有关详细信息,请参阅功能

Windows

可以在本地 Windows 计算机上测试和调试应用,这需要启用开发人员模式。 有关详细信息,请参阅在 Windows 上部署和调试 .NET MAUI 应用

分发适用于 Windows 的 .NET MAUI 应用时,可以将应用及其依赖项发布到文件夹,以便部署到另一个系统。 还可以将应用打包到 MSIX 包中,这对安装应用的用户有很多好处。 有关详细信息,请参阅发布适用于 Windows 的 .NET MAUI 应用