Solución de problemas de aplicaciones de ARM para UWPTroubleshooting ARM UWP apps

Si la aplicación de UWP de ARM32 o ARM64 no funciona correctamente en ARM, aquí tiene algunas instrucciones que pueden ayudarle.If your ARM32 or ARM64 UWP app isn't working correctly on ARM, here's some guidance that may help.

Nota

Para compilar la aplicación de UWP de manera nativa como destino de la plataforma ARM64, debe tener Visual Studio 2017 versión 15,9 o posterior, o Visual Studio 2019.To build your UWP application to natively target the ARM64 platform, you must have Visual Studio 2017 version 15.9 or later, or Visual Studio 2019. Para más información, vea esta entrada de blog.For more information, see this blog post.

Problemas comunesCommon issues

Estos son algunos problemas comunes que se deben tener en cuenta a la hora de solucionar problemas de aplicaciones de ARM32 y ARM64.Here are some common issues to keep in mind when troubleshooting ARM32 and ARM64 apps.

Uso de las API de Windows 10 Mobile solo en procesadores basados en ARMUsing Windows 10 Mobile-only APIs on ARM-based processors

Las aplicaciones ARM pueden tener problemas al usar API solo para dispositivos móviles (por ejemplo, HardwareButtons).ARM apps may run into problems when using mobile-only APIs (for example, HardwareButtons). Para mitigar esto, puede detectar dinámicamente si la aplicación se ejecuta en Windows 10 Mobile antes de llamar a estas API.To mitigate this, you can dynamically detect whether your app is running on Windows 10 Mobile before calling these APIs. Siga las instrucciones de la entrada de blog, detección dinámica de características con contratos de API.Follow the guidance in the blog post, Dynamically detecting features with API contracts.

Inclusión de dependencias no admitidas por las aplicaciones de UWPIncluding dependencies not supported by UWP apps

Las aplicaciones Plataforma universal de Windows (UWP) que no se compilan correctamente con Visual Studio y el SDK de UWP pueden tener dependencias de componentes del sistema operativo que no están disponibles para las aplicaciones ARM que se ejecutan en un sistema ARM64.Universal Windows Platform (UWP) apps that aren't properly built with Visual Studio and the UWP SDK may have dependencies on OS components that aren't available to ARM apps running on an ARM64 system. Entre los ejemplos de estas dependencias se incluyen:Examples of these dependencies include:

  • Se espera que las partes de la .NET Framework estén disponibles.Expecting parts of the .NET Framework to be available.
  • Hacer referencia a componentes .NET de terceros que no son compatibles con UWP.Referencing third-party .NET components that aren't compatible with UWP.

Puede resolver estos problemas: quitar las dependencias no disponibles y volver a compilar la aplicación con las versiones más recientes del SDK de UWP y Microsoft Visual Studio. o bien, como último recurso, quitando la aplicación ARM del Microsoft Store, de modo que la versión x86 de la aplicación (si está disponible) se descarga en los equipos de los usuarios.These issues can be resolved by: removing the unavailable dependencies and rebuilding the app by using the latest Microsoft Visual Studio and UWP SDK versions; or as a last resort, removing the ARM app from the Microsoft Store, so that the x86 version of the app (if available) is downloaded to users’ PCs.

Para obtener más información sobre las API de .NET disponibles para las aplicaciones para UWP, vea .net para aplicaciones para UWP.For more info on .NET APIs available for UWP apps, see .NET for UWP apps

Compilar una aplicación con una versión anterior de Visual Studio y SDKCompiling an app with an older version of Visual Studio and SDK

Si tiene problemas, asegúrese de usar las versiones más recientes de Microsoft Visual Studio y el Windows SDK para compilar la aplicación.If you're running into issues, be sure to use the latest versions of Microsoft Visual Studio and the Windows SDK to compile your app. Las aplicaciones compiladas con una versión anterior de Visual Studio y el SDK pueden tener problemas corregidos en versiones posteriores.Apps compiled with an earlier version of Visual Studio and the SDK may have issues that have been fixed in later versions.

DepuraciónDebugging

Puede usar las herramientas existentes para desarrollar aplicaciones para la plataforma ARM.You can use existing tools for developing apps for the ARM platform. Estos son algunos recursos útiles.Here are some helpful resources.

  • Visual Studio 15,5 Preview 1 y versiones posteriores admiten la ejecución de aplicaciones de ARM32 mediante el modo de autenticación universal.Visual Studio 15.5 Preview 1 and later supports running ARM32 apps by using Universal Authentication mode. Esto inicia automáticamente las herramientas de depuración remota necesarias.This automatically bootstraps the necessary remote debugging tools.
  • Consulte depuración en ARM64 para obtener más información sobre las herramientas y las estrategias para la depuración en ARM.See Debugging on ARM64 to learn more about tools and strategies for debugging on ARM.