[Xamarin.Android] Configurar emulador Android x86 con intel HAXM

AndroidIntroducción

A la hora de desarrollar aplicaciones destinadas a aplicaciones móviles, existen múltiples herramientas que ayudan y facilitan el desarrollo. Hablamos de herramientas para analizar la UI, analíticas de rendimiento o crear los iconos en los diferentes tamaños necesarios. Sin embargo, entre todas ellas, brillan con especial importancia los emuladores.

Los emuladores de dispositivos físicos permiten realizar pruebas y simulaciones en la aplicación de forma rápida y sencilla. En el caso de Android, contamos con diferentes opciones. En este artículo vamos a aprender a crear emuladores de alto rendimiento basados en x86 utilizando HAXM.

NOTA: Recuerda, siempre, repetimos, siempre es necesario hacer pruebas de aplicaciones móviles en dispositivos físicos. No se pueden simular todas las condiciones, el rendimiento es diferente, etc.

Intel HAXM

Intel Hardware Accelerated Execution Manager (HAXM) es un motor de virtualización asistido por hardware (utilizando el hipervisor) para acelerar la emulación de aplicaciones para Android.

Requisitos

Hardware:

  • Procesador intel con Intel VT-x, Intel EM64T (Intel 64).
  • Al menos 4GB de RAM, recomendados 8GB RAM.

Software:

  • Microsoft Windows* 10 (32/64-bit).
  • Microsoft Windows* 8 and 8.1 (32/64-bit).
  • Microsoft Windows* 7 (32/64-bit).

Instalar Intel HAXM

Para instalar Intel HAXM tenemos dos vías:

  • Utilizar Android SDK Manager.
  • Instalar de forma independiente.

Accedemos a la página de descarga de Intel HAXM.

Descargar Intel HAXM
Descargar Intel HAXM

Tras descargar el archivo zip necesario, se debe descomprimir.

Instalar HAXM
Instalar HAXM

Antes de realizar la instalación se puede revisar si es posible utilizar HAXM.

¿Qué quiere decir esto?

Intel HAXM es un software de virtualización apoyándose sobre el hipervisor. Se requiere contar con tecnología VT-x. Además, no podemos contar con Hyper-V en ejecución.

Hyper-V Off
Hyper-V Off

La instalación de Intel HAXM se basa en un asistente bastante sencillo.

Instalación
Instalación

Tras completar la instalación es posible validar que todo es correcto ejecutando unas sencillas líneas de comandos.

Validar HAXM
Validar HAXM

Instalar imágenes emuladores x86

Se debe acceder al Android SDK Manager y buscar las imágenes Intel x86 correspondiente a los niveles de API que queremos utilizar.

Descarga de imágenes de emuladores
Descarga de imágenes de emuladores

Crear nuevo emulador x86 HAXM

Accedemos a Android Emulator Manager. Desde Visual Studio se encuentra en Herramientas > Android > Android Emulator Manager.

Android Emulator Manager
Android Emulator Manager

Para crear un nuevo emulador basado en Intel HAXM se dbe pulsar el botón Create.

Nuevo emulador
Nuevo emulador

La clave radica en el uso de una imagen Intel x86 en el campo CPU/ABI. En base a las características de la máquina de desarrollo se pueden realizar ajustes en el uso de memoria y almacenamiento del emulador.

Llegados a este punto, podemos lanzar el emulador y utilizarlo para depurar nuestras aplicaciones Xamarin.

Todo listo!
Todo listo!

Más información

Curso gratuito de desarrollo de aplicaciones nativas multiplataforma con Xamarin

XamarinIntroducción

No hay duda, los smartphones y tabletas han llegado, y ya forman parte de la vida de todos nosotros.

Esto también nos afecta como desarrolladores. El desarrollo móvil se ha convertido en una prioridad en una gran mayoria de ámbitos.

Actualmente contamos con varias plataformas dominantes:

  • iOS
  • Android
  • Windows

El mercado móvil actual

En lo que respecta a nivel de desarrollo nos supone barreras. Contamos con múltiples plataformas de desarrollo diferentes, lenguajes diferentes, etc. suponiendo un nivel de aprendizaje y esfuerzo cada vez mayor de cara a desarrolladores. Además, la experiencia nos ha demostrado que los usuarios no aceptan aplicaciones no nativas. Buscan aplicaciones rápidas, fluidas y con consumos moderados perfectamente adaptadas a la plataforma, ofreciendo una experiencia completa.

¿Qué podemos hacer para mejorar este panorama?

Xamarin

Aquí es donde entran en juego las tecnologías de desarrollo multiplataforma. En estos últimos años han aparecido diversas tecnologías que permiten aprovechar una base de código en multiples plataformas. Entre diversas opciones brilla con especial fuerza, por diferentes motivos (evolución, comunidad, apoyo de Microsoft) Xamarin.

Xamarin es una plataforma de desarrollo gratuita de Microsoft que permite crear nuestras aplicaciones móviles una sola vez y que funcionen en Android, iOS y Windows entre otros sistemas (Windows 10, Mac, wearables…). Todo ello sin tener que duplicar código o aprender nuevas herramientas. Las apps que creamos con Xamarin son aplicaciones nativas, es decir, no tienen diferencias con las que podríamos crear usando las herramientas propias de cada plataforma.

xamarinmonkeysCurso gratuito Xamarin en CampusMVP

Tras realizar un completo curso de Xamarin en CampusMVP donde se aborda tanto Xamarin Classic como Xamarin.Forms, desde conceptos básicos a la publicación pasando por buenas prácticas, MVVM o testing y haber recibido feeback positivo, ¿algo mejor que realizar un gran curso gratuito con la ayuda de Microsoft?. Así nace el curso gratuito  de desarrollo de aplicaciones  Xamarin en CampusMVP.

El curso se compone de cinco módulos diferentes:

  1. Introducción a Xamarin y Azure: en este primer módulo se conocen los conceptos básicos relacionados con Xamarin, se realiza la instalación, se revisa la integración de Xamarin con Visual Studio, un repaso a emuladores y se realiza la primera aplicación Xamarin.Forms.
  2. Interfaz de usuario: se conocen las páginas, layouts y controles de Xamarin.Forms. Tras realizar aplicación básica se introduce la necesidad de buenas prácticas. Conocemos y aplicamos el patrón MVVM para terminar con otros conceptos necesarios como la navegación o el sistema de mensajería.
  3. Creando el backend de la aplicación en Azure: se crea un backend en Azure. Todos los conceptos necesarios para crear el backend se repasan. Conceptos como la creación de una Azure Mobile App, Azure SQL, Easy Tables, etc. Se completa el módulo integrando el backend en una aplicación Xamarin.
  4. Autenticación de usuarios: continuamos progresando en nuevos conceptos, en esta ocasión centrados en añadir autenticación en aplicación Xamarin aprovechando las posibilidades de Azure y utilizando proveedores de autenticación sociales. También hay nuevos conceptos relacionados con Xamarin como el acceso a características específicas de una plataforma con el uso de la cámara y se completa la gestión con el backend previamente creado.
  5. Notificaciones Push: se concluye el curso personalizando la aplicación utilizando estilos e integrando notificaciones Push en una aplicación Xamarin.

El curso comienza en Enero y dura hasta finales de Junio de este mismo año. Durante estos 6 meses se aprenden todos los conceptos creando una aplicación paso a paso desde cero. Al final se consigue tener una aplicación con:

  • Autenticación
  • Listado de elementos obtenidos desde un backend
  • Vista de detalles
  • Posibilidad de añadir nuevos registros incluyendo el uso de la cámara del dispositivo
  • Notificaciones Push

Al final de cada módulo se tiene un divertido reto donde en algunas ocasiones consiste en crear una pequeña aplicación aplicando los conceptos aprendidos y en otras se continuará el desarrollo de una aplicación planteada a lo largo del curso. Además, todos los módulos se componen de un conjunto de documentación, videos y ejemplos prácticos.

¿Te animas?

Muchas gracias a Microsoft y a CampusMVP por hacer posible crear un curso gratuito que ayuda al crecimiento de la comunidad Xamarin.

Más información

[Material dotNetMálaga] Taller Xamarin

logo_dotnetmlg_full_color_2tintas_2El evento

El pasado 10 de Diciembre tenía lugar el dotNetMálaga 2016. Evento destinado a desarrolladores en España con 2 Tracks diferentes, 10 sesiones técnicas, talleres técnicos y todo un día repleto de grandes momentos, tiempo para encontrar a viejos conocidos y conocer a muchos otros nuevos.

El material

He tenido la oportunidad de participar con un taller Xamarin donde realizamos una aplicación Xamarin.Forms paso a paso utilizando MVVM.

En cuanto al código fuente del taller, se encuentra disponible en GitHub:

Ver GitHub

Agradecer a toda la organización del eventos, ponentes y asistentes por hacerlo posible. El año que viene…¿repetimos?

Más información

[Eventos] re-Connect Tour

re-connectEl Tour

Tras un exitoso Microsoft Connect(); 2016, en New York, donde se presentaron importantes novedades relacionadas con la plataforma Cloud, novedades en .NET, Visual Studio para MacOS o novedades en Xamarin, ¿algo mejor que recopilar todas las novedades en un evento?.

Si, haciendo varios y organizarlos en un Tour por varias ciudades!.

Las ciudades y fechas son:

La agenda

  • 9:30 Más productividad que nunca en el desarrollo móvil multiplataforma con Xamarin
    En esta charla veremos las novedades más importantes que llegan de la mano de Xamarin. Para empezar el nuevo Visual Studio for Mac que permite crear aplicaciones iOS y Android con backend net core. Pero esa no es la única novedad: veremos en acción el previsualizador de Xamarin Forms, Xamarin Profiler y el espectacular Xamarin Inspector que lleva el desarrollo móvil a otro nivel. Y finalmente Visual Studio Mobile Center, la evolución de HockeyApp y la integración con toda la suite de movilidad de Microsoft.
  • 10:30 .NET Core & SQL <3 Linux
    Net Core 1.1 ya está aquí, y a pesar de ser una versión “menor” no deja de tener novedades interesantes: la integración con los logs de Azure, mejoras de rendimiento y, por supuesto Entity Framework 1.1, entre otras. En esta charla desgranaremos las novedades de asp.net core 1.1 y mostraremos como EF1.1 permite trabajar con las últimas novedades de SQL Server. Comentaremos el concepto de SQL Server CPSA y como nos impacta eso como desarrolladores. Y por supuesto, veremos SQL Server for Linux en acción.
  • 11:30 Microsoft y el mundo de los contenedores
    En esta charla veremos las novedades incluídas en Visual Studio 2017 para facilitar el uso de Docker. Comentaremos que es Docker, como funciona y como con Visual Studio 2017 podemos crear aplicaciones netcore y empaquetarlas con Docker de forma sencilla, sin perder ni un ápice de productividad. Veremos también como publicar contenedores Docker en un AppService, como usar Azure Container Registry así como un esbozo de Azure Container Services. Y para finalizar comentaremos las novedades de VSTS al respecto de Docker.
  • 12:30 ASP Net Core & Visual Studio en 3 sabores, elige el tuyo
    En esta charla veremos lo sencillo que es desarrollar una aplicación netcore con cualquiera de las 3 ediciones de Visual Studio que disponemos, Visual Stduio, Visual Studio for Mac y Visual Studio Code 1.7 bajo Linux. Para ello crearemos una aplicación sencilla asp.net core que use MongoDb. Veremos todas las facilidades de la suite de Visual Studio para depurar código y para navegar por el código. Finalmente veremos cómo usar Docker desde la suite de Visual Studio para crear un contenedor con nuestra aplicación, y usando las nuevas CLI de Azure veremos cómo publicarlo en un AppService. Finalmente veremos cómo podemos usar DocumentDb en lugar de MongoDb en menos que canta un gallo

¿Te apuntas?

Más información

[dotNetMálaga 2016] Taller Xamarin

logo_dotnetmlg_full_color_2tintas_2dotNetMálaga 2016

El próximo sábado 10 de Diciembre tiene lugar la II edición de la conferencia dotNetMálaga que constará de un día completo con numerosas sesiones y talleres divididos en dos tracks, .NET y Web. También habrá regalos y sorteos para los asistentes.

Taller Xamarin

De 11:15h a 13:30h participaré con un divertido taller de desarrollo de aplicaciones móviles multiplataforma con Xamarin. El objetivo será realizar una aplicación paso a paso. También se realizarán pequeñas sesiones para trasmitir los conceptos básicos necesarios. Al final de taller, contaremos con alguna sorpresa y regalo.

Requisitos:

  • Visual Studio y Xamarin instalado. La versión Community gratuita es perfectamente válida.
  • SDK de desarrollo Windows 10.
  • Es recomendable contar con emuladores instalados.
Taller Xamarin
Taller Xamarin

Anímate a participar!

Más información

[Material] re-Connect(); Madrid 2016

re-connectEl evento

Tras un exitoso Microsoft Connect(); 2016, en New York, donde se presentaron importantes novedades relacionadas con la plataforma Cloud, novedades en .NET, Visual Studio para MacOS o novedades en Xamarin, ¿algo mejor que recopilar todas las novedades en un evento?

De esta forma, el pasado 30 de Noviembre, tenía lugar en Madrid el re-Connect(); 2016. Una jornada con varias sesiones técnicas con miembros de la comunidad y también con miembros de Microsoft como David Carmona.

El material

Pude participar en el evento con una de las sesiones.

Novedades Xamarin
Novedades Xamarin

Desde que Microsoft hizo pública la compra de Xamarin el pasado febrero, todos estábamos esperando ansiosamente el gran evento de Microsoft, para saber cual va a ser la dirección del desarrollo multiplataforma liderado por Miguel de Icaza. La verdad que este evento no nos ha dejado indiferentes y se han anunciado muchas novedades que nos afectaran directa o indirectamente en nuestros día a día. En esta charla hicimos un pequeño resumen de las noticias más destacadas enfocadas al mundo .NET y Xamarin y hablamos de las novedades en IDEs (Visual Studio para MacOS), las nuevas herramientas, DevOps con Visual Studio Mobile Center o la llegada de Tizen.NET.

Se puede ver toda la grabación del evento en Channel 9.

En cuanto a las demos técnicas realizadas, las tenéis disponible en GitHub:

Ver GitHub

Más información

[Material] Xamarin Dev Day Madrid

El evento

El pasado sábado 26 de Noviembre, tenía lugar en Madrid el Xamarin Dev Days. Una jornada con varias sesiones técnicas, taller, regalos y mucho networking.

El resultado fue un fantástico día de desarrollo Xamarin con muchas preguntas, ayuda y tiempo para charlar entre todos rodeados de un café o unas pizzas.

El material

Pude participar en el evento con una de las sesiones. Nos centramos en el desarrollo de aplicaciones móviles multiplataforma utilizando Xamarin.Forms:

Comenzamos por una introducción de conceptos básicos, primera demo aplicando MVVM y terminamos repasando todas las últimas novedades como DataPages, Native Views o el desarrollo para Tizen.

Tras las sesiones, realizamos un muy divertido taller donde paso a paso, desarrollamos una aplicación Xamarin.Forms aplicando MVVM y accediendo a información meteorológica.

En cuanto a las demos técnicas realizadas, las tenéis disponible en GitHub:

Ver GitHub

Quisiera terminar añadiendo algunos agradecimientos. Comienzo por los chicos de Liferay por las instalaciones y toda la ayuda; a Plain Concepts y Bravent por su patrocinio; a Xamarin también por patrocinar el evento; a mis compañeros Dachi Gogotchuri, Sergio Gasca, Ramón Esteban y Alejandro Campos por sus demos y ayudar con todo y por supuesto a los asistentes. Gracias a todos.

Más información

[Podcast Interfaz] Conociendo Xamarin

interfaz-podcastIntroducción

Recientemente, Rodrigo Díaz Concha, Windows Development MVP y Microsoft Regional Director en Mexico, ha lanzado un podcast (muy recomendado) llamado Interfaz. El objetivo del podcast es ser un medio de comunicación que toque diversos temas del espectro de tecnologías de software que tenemos a nuestro alcance hoy en día con una frecuencia semanal.

El podcast, conociendo Xamarin

En el episodio 9 del podcast, tengo el placer de poder participar hablado de Xamarin. Durante el episodio hablamos acerca de qué es Xamarin, las opciones para el desarrollo con Xamarin, las ventajas de usar Xamarin.Forms, el futuro de Xamarin y los errores comunes que las personas cometen al iniciar con esta tecnología.

¿Te resulta interesante?

Puedes escuchar el podcast a continuación.

Más información

[Podcast] Xamarin: Mitos y verdades

mic-02El podcast

Recientemente los compañeros Camilo Galiana y Rodrigo Díaz crearon un podcast llamado Just In Time. Un podcast sobre desarrollo movil, buenas practicas, lenguajes y desvarios varios.

En el primer captítulo, he tenido el placer de participar junto a Josué Yeray y Marcos Cobeña para hablar de Xamarin. El enfoque buscado era tratar aspectos importantes relacionados con el desarrollo y uso de Xamarin desde un punto de vista neutro y desde la experiencia. En el podcast tratamos aspectos como:

  • El rendimiento en comparación con aplicaciones nativas.
  • Cantidad de código compartido en aplicaciones “reales”.
  • Herramientas de Xamarin e integración de Visual Studio en comparación con las herramientas nativas.
  • Uso de plugins y de librerías nativas, ventajas y dificultades.
  • Frecuencia y estabilidad de cada nueva versión.
  • Etc.

Si te resulta interesante, puedes escuchar el podcast en el siguiente enlace.

Más información

[Evento] Xamarin Dev Days en Madrid

El evento

Xamarin Dev Days son una serie de eventos celebrados a lo largo de todo el mundo que ofrecen la posibilidad de conocer las últimas novedades relacionadas con el desarrollo Xamarin, poder disfrutar de talleres y por supuesto, compartir momentos de networking.

Xamarin Dev Days
Xamarin Dev Days

Con fuerza llega a Madrid, donde tendremos la siguiente agenda:

• 9:00AM Registro y bienvenida.

• 9:30 – 10:10AM Introducción a Xamarin. Introducción a los conceptos básicos tanto de Xamarin Classic como de Xamarin.Forms así como a la integración con Visual Studio, Xamarin Test Cloud, etc.

• 10:20 – 11:00AM Xamarin Forms. Tras una introducción a conceptos básicos se verá como estructurar el proyecto y una serie de buenas prácticas para compartir la mayor cantidad de código posible. Finalmente se terminará con las últimas novedades como Xamarin.Forms Previewer, DataPages, Themes o Native Embedding.

• 11:10 – 11:40AM Café.

• 11:40 – 12:20AM Xamarin + Azure. Gracias al Azure podemos crear servicios de backend, notificaciones push y otras características esenciales de forma compartida. En esta sesión aprenderemos como sacarle partido a Azure desde nuestras aplicaciones Xamarin.

• 12:30 – 13:30PM Comida.

• 13:30 – 16:30PM Hands on Lab. ¿Crear una aplicación Xamarin paso a paso con MVVM, uso de servicios web y accediendo a características de cada plataforma?. En este taller realizaremos una aplicación con esas características entre todos. Anímate y ven con tu portátil preparado!

• 16:30PM Networking.

Organizadores y ponentes

El lugar

El evento se celebrará en Liferay. Dirección detallada:

Paseo de la Castellana, 280, 28046 Madrid, Madrid

Liferay
Liferay

La fecha

El evento tendrá lugar el próximo Sábado, 26 de Noviembre de 9:00h a 16:30h. Tendremos tres sesiones técnicas de  40 minutos de duración cada una junto a un taller de 3 horas de duración. Además contaremos con regalos y sorpresas.

¿Te apuntas?

Más información