Xamarin, Xamarin.Forms

Error { MT0116: Invalid architecture} #Xamari.Forms #Xamarin.iOS


iOS11

Hace algunos días llego la actualización de iOS 11, la cual sinceramente trae consigo muchas mejoras en cuanto a UX, pero en cuanto a los desarrolladores, Apple ha introducido actualizaciones de arquitectura.

El cual es el principal cambio que se debe tener en cuenta con iOS 11, si es que deseamos actualizar nuestra aplicación para que funcione correctamente en los dispositivos con esta version del software.

Me aburro… ¿Qué cambio de arquitectura es?

Se realizo una depreciación de la compatibilidad de 32 bits para las aplicaciones, como se detalla en el comunicado de prensa de Apple: “Todas las nuevas aplicaciones y actualizaciones de las aplicaciones existentes deben admitir 64 bits”.

Puesto en el siguiente panorama: tengo mi aplicación funcional en iOS 10.x y actualizo Xcode y Xamarin, quiero desplegar mi App en un emulador de un iPhone 8 con iOS 11.0, lo que ocurre es lo siguiente:

MT0116: Invalid architecture: {arch}. 32-bit architectures are not supported when deployment target is 11 or later. Make sure the project does not build for a 32-bit architecture.

Sinceramente no sabia que hacer, ya que no hay mucha documentación replicada, por ende me llevo un rato encontrar esto:

MT0116: Invalid architecture: {arch}. 32-bit architectures are not supported when deployment target is 11 or later. Make sure the project does not build for a 32-bit architecture.

iOS 11 does not contain support for 32-bit applications, so it’s not supported to build for a 32-bit application when the deployment target is iOS 11 or later.

Either change the target architecture in the project’s iOS build options to arm64, or change the deployment target in the project’s Info.plist to an earlier iOS version.

Dicho en otras palabras: las aplicaciones de 32 bits no se lanzarán en iOS 11.

Entonces… ¿que tengo que hacer?

Para actualizar la aplicación en Visual Studio para Mac, solo hay que seguir estos pasos:

1 – Clic derecho en el nombre del proyecto (lo cual nos abrirá las Opciones del mismo).
2 – Ir a la pestaña “iOS Build”.
3 – Establezcamos en el menú desplegable de “Arquitecturas compatibles” en x86_64 para Debug | iPhoneSimulator y también para Release | iPhoneSimulator:

Screen Shot 2017-09-27 at 6.05.15 PM

Para dispositivos, solo hay que cambiar la configuración tanto como en Debug | iPhoneRelease|iPhone en ARM64.

 

Screen Shot 2017-09-27 at 6.15.50 PM

Espero esto les haya ayudado, y recuerden, cualquier duda o comentario relacionado al desarrollo de aplicaciones con Xamarin.Forms, escríbanme por aquí o en Twitter, me encuentran como LucioMSP.

Hasta la próxima!

Más información: GitHub/Xamarin/MTouch

Historia pasada… 32/64 bit Platform Considerations 

Anuncios

Responder

Por favor, inicia sesión con uno de estos métodos para publicar tu comentario:

Logo de WordPress.com

Estás comentando usando tu cuenta de WordPress.com. Cerrar sesión / Cambiar )

Imagen de Twitter

Estás comentando usando tu cuenta de Twitter. Cerrar sesión / Cambiar )

Foto de Facebook

Estás comentando usando tu cuenta de Facebook. Cerrar sesión / Cambiar )

Google+ photo

Estás comentando usando tu cuenta de Google+. Cerrar sesión / Cambiar )

Conectando a %s