排查 ARM UWP 应用问题

如果 Arm32 或 Arm64 UWP 应用在 Arm 上无法正常工作,可参阅以下一些可能有所帮助的指导。

注意

若要生成 UWP 应用程序以本机面向 Arm64 平台,必须具有 Visual Studio 2017 版本 15.9 或更高版本或 Visual Studio 2019。 有关详细信息,请参阅此 博客文章

常见问题

下面是在对 Arm32 和 Arm64 应用进行故障排除时要记住的一些常见问题。

在基于 Arm 的处理器上使用仅Windows 10 移动版 API

使用仅限移动的 API(例如 HardwareButtons)时,Arm 应用可能会遇到问题。 若要缓解此问题,可以在调用这些 API 之前动态检测应用是否在Windows 10 移动版上运行。 有关详细信息,请参阅 使用 API 协定动态检测功能。

包括 UWP 应用不支持的依赖项

通用 Windows 平台(UWP)应用未使用 Visual Studio 正确构建,并且 UWP SDK 可能依赖于在 Arm64 系统上运行的 Arm 应用不可用的 OS 组件。 这些依赖项的示例包括:

  • 预期 .NET Framework 的某些部分可用。
  • 引用与 UWP 不兼容的第三方 .NET 组件。

可以通过以下方法解决这些问题:删除不可用的依赖项,并使用最新的 Microsoft visual Studio 和 UWP SDK 版本重新生成应用;或作为最后手段,从 Microsoft 应用商店中删除 Arm 应用,以便将应用的 x86 版本(如果可用)下载到用户的电脑。

有关适用于 UWP 应用的 .NET API 的详细信息,请参阅 适用于 UWP 应用的 .NET

使用较旧版本的 Visual Studio 和 SDK 编译应用

如果遇到问题,请确保使用最新版本的 Microsoft Visual Studio 和 Windows SDK 来编译应用。 使用早期版本的 Visual Studio 和 SDK 编译的应用可能会遇到在更高版本中已修复的问题。

调试

可以使用现有工具为 Arm 平台开发应用。 下面是一些有用的资源。

  • Visual Studio 15.5 预览版 1 及更高版本支持使用通用身份验证模式运行 Arm32 应用。 这会自动启动必要的远程调试工具。
  • 请参阅 Arm64 上的调试,了解有关在 Arm 上进行调试的工具和策略的详细信息。