viernes, 25 de abril de 2014

Adaptando la interfaz de usuario a diferentes tamaños y resoluciones en Windows Phone

El día de ayer fue el Evento Learn, tengo el video de práctica de una de mis charlas, así que se los comparto, espero que se animen a empezar a crear apps con Windows Phone 8.1.

Las demás charlas pueden visualizarlas en el sitio del evento, estarán en línea bajo demanda por unos meses.

sábado, 19 de abril de 2014

Compartiendo la pantalla de tu Windows Phone en Demos

Desde ayer fue compartido oficialmente el software necesario para compartir nuestro popio Windows Phone en demos durante las presentaciones, algo que esperabamos muchos speakers hace tiempo.

Ahora que los desarrolladores podemos tener accesso al Windows Phone 8.1 a través del programa para desarrolladores, observamos como en el dispositivo, en la zona de Settings o Configuración, hay una nueva opción "Project my screen", lo cual nos dejó la curiosidad si pronto podriamos usar esta característica, y así fue.

Antes de empezar descarga el cliente para tu PC, Project My Screen App.

Lograr conectar el dispositivo puede ser desde muy fácil, hasta un poco demorado, pero si se aseguran de seguir los pasos correctamente, funcionaá sin problema, lo dice alguien que lo intento hasta perder la esperanza, luego de eso me detuve un rato y con calma retomé las instrucciones y funcionó, solo faltaba un paso.

Los pasos fáciles serían, después de instalar, abrir Project My Screen App en tu PC, conectar tu móvil con el cable USB que usas para transferir los datos, y si todo va bien aparecerá en su teléfono este mensaje:


Al aceptar verán lo mismo que ven en su dispositivo, proyectado en su PC, incluso sus interacciones con táctiles y así mismo lo verán entonces en sus presentaciones.



Para activar la vista de sus pulsaciones, deben realizarlo en las opciones avanzadas de los Settings de su dispositivo.


Estos son algunos compando útiles en la app de escritorio, los pueden ver siempre presionando F1

Action/Command Key
View the help screen
Quit to windowed mode
Toggle background image on/off B
Toggle the expanded screen mode E
Toggle full-screen mode F or +
Toggle the phone shell image P
Toggle visibility of ‘touch dots’ T
Display the current [desktop] frame rate R
Force orientation to landscape left Left arrow key
Force orientation to landscape right Right arrow key
Force orientation to portrait up Up arrow key
Force orientation to portrait down Down arrow key
Reset orientation to match phone

¡No funciona!

Si les pasa como a mi, por más que intentan no les funciona, 2 cosas pueden pasar.

1. Tienen drivers viejos instalados
2. Tienen el driver de clave del Nokia Software Updater Retail instalado, si como yo tuvieron que actualizar su Lumia a Amber debido a que sus operadores no actualizan sus equipos.

Para desintalarlos, conecten el equipo y abran el Device Manager o Administrador de Dispositivos.


Para eliminar cada uno den click derecho y desinstalar y pongan especial atención, si tienen el driver Nokia USB, deben seleccionar Borrar el driver.


Igual desinstalen los otros drivers, no es necesario reiniciar el PC. Luego de esto, desconecten el móvil, abrán de nuevo Project My Screen App y vuelvan a conectar el móvil, entonces todo irá bien.

Si tienen más problemas, intenten removiendo el móvil en Devices and Printers en el Panel de Control, y también al reconectar después de instalar, cambiar el puerto USB donde están conectando el móvil.

:) Disfrutenlo.

Nota: Recuerden que si igual necesitan el Nokia Software Updater Retail deberán reinstalar el driver, y cuando necesiten proyectar su teléfono, simplemente desinstalen solo el driver Nokia USB.

miércoles, 16 de abril de 2014

Evento //Learn/ Windows

Como muchos de ustedes saben hace poco se realizó el Build, en el cual se hicieron muchos anuncios acerca de Windows Phone 8.1. Pensando en ello la comunidad de MVPs en conjunto con Microsoft, realizaremos un evento en diferentes idiomas para llevar algunos de esos anuncios e involucrar a los desarrolladores de Windows Phone en los nuevos cambios de la plataforma.

Ese evento es //Learn/ Windows, al cualquiero invitarlos a participar registrándose en el siguiente enlace:

bit.ly/LearnWindowsSpanish

Además de esto pronto se estará realizando también a nivel mundial una gran Hackatón, la cual será llamada //Plublish/ Windows y cuyas inscripciones también se encuentran abiertas.

La agenda de //Learn/ Windows, para el track en español estará acompañada los speakers Josue Yeray, Jose Luis LaTorre, Alex Casquete, Ivan Toledo, Roberto Alvarado y Yo ( :) ), a continuación les comparto la agenda del evento y los invito a acompañarnos y ayudar a comunicar a todos los hispano parlantes sobre este evento, de comunidad y para la comunidad.

1. Introducción a Windows Phone 8.1 (@joslat)
2. Construyendo apps Windows XAML (@josueyeray)
3. Controles y transiciones de páginas (@acasquete)
4. Ciclo de vida de las aplicaciones Windows XAML (@acasquete)
5. Listas (@ralvaradot)
6. Tiles y notificaciones (@itoledo)
7. Aplicaciones en segundo plano y multitasking (@soreygarcia)
8. Adaptando la UI a diferentes pantallas (@soreygarcia)

sábado, 5 de abril de 2014

#GWAB: Azure Mobile Services

Hace unos días la comunidad Avanet de Colombia y Ecuador realizó el Global Windows Azure Bootcamp, en el cual estuve compartiendo mis experiencias participando en dos proyectos Trivium Cup, el cual les mencioné hace unos días en un post donde les enseñaba la arquitectura que habiamos construido para que fuera cross platform, y como aplicamos buenas prácticas de programación en su construcción.

Además tambien estuve contandoles sobre Scores Gurú, un nuevo proyecto en el que participo en una pequeña parte, y del cual hace parte tambien Walter Novoa, evangelist de Microsoft. La verdad es que lo interesante de la charla fue los demos y código que les mostré a los asistentes, pero alguien me pidió que publicara la presentación y pues aquí va.

miércoles, 2 de abril de 2014

Modos de desarrollar para Windows y Windows Phone

Hola

Con el anuncio de las novedades en Windows y Windows Phone una avalancha de contenido se viene en la red, sin embargo, seas nuevo o veterano en Windows Phone, antes de empezar te invito a hacer una parada y recapitular sobre algo que es necesario entender en especial cuando en nuestras apps queremos estar en la mayor cantidad de dispositivos.

Vamos a enumerar los diferentes modelos de programación posibles según las versiones de sistemas operativos disponibles.

Windows Phone 7, Windows Phone 7.5, Windows Phone 7.8

Los dispositivos existentes con estas versiones cada vez se han quedado más atrás, la razón principal es que debido a capacidades de hardware, no pudieron continuar la línea de evolución de Windows Phone, sin embargo, una gran cantidad de dispositivos de este tipo están en el mercado y son usados diariamente por muchas personas.

Caí en cuenta de que este escenario seguía importando con mi ultima aplicación, al pedir gente que nos apoyara como Beta Testers, nos encontramos con que al menos el 40% de ellos no pudieron probar nuestra aplicación por que funcionaba solo en equipos Windows Phone 8.

Mi aplicación probablemente no es tan critica como para que intentemos llevarla a cubrir este porcentaje, pero ¿qué tal si lo fuera?

Hace un tiempo hice una aplicación cuya decisión arquitectónica era justamente cubrir a todos los usuarios posibles y la creamos en Windows Phone 7.5 y hoy continúa oficialmente en Windows Phone 7.5 para poder cubrir la mayor cantidad de clientes posibles, debido a la naturaleza de la empresa para la que se construyó. Así que si este es tu caso, no te olvides, lo que construyas con SDKs para versiones superiores no correrá en estos dispositivos.

Los principales "tipos" de apps que se pueden crear son:
  1. Crear aplicaciones XAML basadas en Silverlight
  2. Juegos usando XNA, tecnología fue muy popular entre los adeptos a Microsoft.

Windows Phone 8 y Windows 8 (Update 1 a 8.1)

Con Windows Phone 8 y Windows 8 vinieron muchas mejoras a la manera como programábamos, pero además la plataforma empezó a abrir espacio a tecnologías más populares como Unity, y escenarios más complejos, dando acceso a C++, a componentes Win32 (en Windows 8) y pudiendo crear aplicaciones para DirectX.

Con esto los sectores empresariales además comenzaron a ver la luz al final del túnel, con versiones de Windows Embedded 8 que devuelven la esperanza a la cantidad de proyectos móviles empresariales basados en esta plataforma.

Además Windows 8 hizo su guiño a los desarrolladores HTML5 y JS mostrándoles como crear aplicaciones "nativas" participando de toda la experiencia y ecosistema de las aplicaciones modernas.

Los "tipos" de apps en esta versión son:
  1. Aplicaciones nativas HTML5 y JS (No disponibles para Windows Phone)
  2. Aplicaciones XAML con C# y VB
  3. Aplicaciones XAML con C++
  4. Aplicaciones DirectX
En Windows Phone las aplicaciones HTML5 solo eran una plantilla con WebView incorporado y no se ejecutaban de forma nativa ni con las ventajas correspondientes de tener mayor acceso a los dispositivos y poder tener referencias a otros proyectos .NET.

Windows 8.1 (Update 1) y Windows Phone 8.1

El dia de hoy nos incorporamos a la nueva aventura, sin embargo todas las nuevas noticias traen implicaciones en desarrollo a las que tendremos que adaptarnos y entender a donde pueden o no llegar nuestras nuevas apps.

Empecemos con calma, primero las buenas nuevas. Windows Phone 8.1 ahora ofrece aplicaciones HTML5 y JS de forma nativa, lo cual es excelente. Bien por todos aquellos devs que lo estaban esperando.

Las apps XAML que veníamos trabajando, pasarán a ser apps XAML basadas en Silverlight 8.1, y tendrán acceso a una cantidad limitada de características nuevas, pero lo realmente importante es que llevan una ruta unificada para trabajar y compartir más código con las Windows 8.1 que trabajamos hasta ahora.

Sobre las Universal apps, hay gran expectativa y alegría, ahora podemos construir aplicaciones que se construyen una única vez y funcionan en todas las plataformas. Lo cual es genial para la plataforma y para nuestro trabajo. Bueno, ¿y por qué el tono de alerta?

Okey, para entenderlo enumeremos los tipos de apps disponibles ahora:
  1. Aplicaciones DirectX
  2. Aplicaciones XAML con C# y VB (Basadas en Silverlight 8.1)
  3. Aplicaciones XAML con C++ (Basadas en Silverlight 8.1)
  4. Universal Apps con C# y VB (Windows XAML)
  5. Universal Apps con C++ (Windows XAML)
  6. Universal Apps con HTML5 y JS
¡Hey! ¡Momento! Más tipos de apps, ¿que tiene eso de malo? Bueno, en principio las apps, apps son pero...

Las apps basadas en Silverlight 8.1 no se podrán portar de forma transparente a Universal Apps. Las apps basadas en Silverlight 8.1 son la oferta de hoy para quienes tienen apps creadas, es el siguiente paso para mejorarlas y que puedan acceder a algunas de las carácteristicas de la evolución de la plataforma.

Las Universal Apps están dirigidas a nuevas apps, o a quienes quieran de plano volver a crear sus apps para volverlas universales. Así que como pueden ver, a hoy, habrá que elegir correctamente que es lo que queremos hacer.
Por otro lado, con como es de esperarse, estas "nuevas apps" no van a correr en Windows Phone 8, para correr todos los tipos de apps que hemos mencionado hasta el momento, se deberá tener Windows Phone 8.1. 
La parte positiva es que a diferencia de Windows Phone 7.5, todos los celulares con Windows Phone 8 podrán actualizarse a Windows Phone 8.1 pero la pregunta es ¿Cuando? Muchos dispositivos hoy siguen sin actualizarse por culpa de los operadores de telefonía móvil, y aunque nosotros los desarrolladores no tenemos ese problema, no hacemos apps para nosotros, si no para los usuarios que seguirán estancados con los operadores en Windows Phone 8. :(
No quiero terminar con una sombra de pesadumbre, todo lo que esta pasando es bueno, muy bueno para la plataforma, hay factores que van a entorpecer y alargar el proceso de que todas estas novedades nos lleguen y le lleguen a nuestros usuarios, pero el futuro es prometedor.

Para quienes hace rato somos devs de la plataforma, claramente las mejoras son geniales, el que la compatibilidad del código sea cada vez mejor, le da un plus para seguir adelante, pero lo mejor es que el conocimiento que tenemos sigue vigente e intacto para seguir construyendo apps.

Nos seguiremos viendo con más análisis y tutoriales sobre las novedades de Windows Phone 8.1 :)

Empieza a desarrollar para Windows Phone 8.1 ahora mismo

Hoy es un gran día para todos los desarrolladores Windows Phone, en el BUILD se han anunciado todas las innovaciones de la plataforma. Es un momento emocionante, recuperar el ánimo y seguir adelante. Lo que se viene es genial, un ecosistema unificado no solo en experiencias si no realmente e el core y herrsmientas y modelo de programación.

Hay innovaciones a todo nivel, la plataforma de notificaciones cambio, hay más características de control y seguridad para las aplicaciones y dispositivos a nivel empresarial y lo que muchos esperábamos, tener VPN en nuestros móviles.

Además el tan esperado HTML5 y JS ahora es nativo en Windows Phone 8 como lo era ya en Windows 8.

Entre todas las buenas nuevas, la plataforma por fin se pone al nivel, con Cortana, el teclado swap y el Action center, pero lo mejor es que claramente este es solo el principio.

Todos los desarrolladores inscritos en el programa de desarrolladores tendremos acceso a Windows Phone 8.1 así que si aún no perteneces a el, este es el momento, ya todas las instrucciones están publicadas.

Además, desde ahora puedes descargar el SDK de Windows Phone 8.1 y empezar a desarrollar. ¡Prepárate para el futuro! La aventura apenas comienza.


VS 2013 Update 2 RC package
Download Link
VS2013 Update 2 RC: Patch
VS2013 Update 2 RC: Express for Windows
VS2013 Update 2 RC: Ultimate
VS2013 Update 2 RC: Professional
VS2013 Update 2 RC: Premium