Mejorando mi app con Windows Azure Mobile Services!

Estándar

En este post: exploraremos la aplicación inicial de WAMS, la mejoraremos con scripts desde el servidor, y le agregaremos identificación con Microsoft Account por medio del Live SDK! 

Es hora de mejorar las aplicaciones de Windows 8, y que mejor que hacerlo con Windows Azure Mobile Services!😉

Screenshot (257)

Es por ello que si se han perdido la introducción que he realizado sobre Windows Azure Mobile Services (WAMS) es mejor que lo vean:

En mi blog –> http://j.mp/XQloVa

En el blog de MSEstudiantesTech –> http://j.mp/UIJX6K

Explorando la aplicación inicial de Windows Azure Mobile Service

En el caso de haber descargado nuestra solución en C#, nos encontraremos con:

>La referencia al Mobile Service SDK:

Screenshot (290)

Si seguimos recorriendo podemos observar que la configuración del cliente del mobile service en el archivo app.xaml.cs, es de la siguiente manera:

public static MobileServiceClient MobileService = new MobileServiceClient(
“URL”,
“ApplicationKey”
);
Screenshot (291)

Donde el URL  y el ApplicationKey podemos obtenerlos desde el Dashboard del Mobile Services:

Screenshot (278)

Screenshot (279)

Recordemos que los items o actividades pueden clasificarse en completos e incompletos, siendo estos últimos los que son únicamente posibles verlos en la aplicación demo. Y en el archivo de MainPage.xaml.cs, podremos encontrar su estructura

Screenshot (292)

Tal estructura respeta a la tabla que podemos encontrar en WAMS:

Screenshot (287)

Continuando con el recorrido de la aplicación nos encontraremos con el código de la creación de la colección de actividades:

Screenshot (293)

Y en el mismo archivo podemos ver el código de Insertar (agrega un nuevo ítem a la lista) , Refrescar (actualiza los items en la lista, filtrando y eligiendo solo aquellos que aún no se han completado) y Actualizar (Este código actualiza un item y lo actualiza en la base de datos):

Screenshot (294)

Todo este código recientemente explorado nos permitirá integrar a WAMS en un nuestra aplicación de Windows Store.

Usando scripts en el servidor

Para trabajar con los scripts que están desde el lado del servidor debemos acceder al Mobile Service de la siguiente manera:

Screenshot (295)

y luego seleccionar ‘Script’ y seleccionar la operación.

En este caso trabajaremos con la función insert, cuyo parametros son:
item: la fila para ser insertada en la tabla
user: el objeto usuario cuando una autenticación es requerida –> http://j.mp/176WtmV
request: el objeto requerido por la operación –> http://j.mp/14G2esx

Screenshot (296)

Modificaremos el script para que solo se acepte las actividades cuyo nombre tenga más de 5 caracteres:

Screenshot (297)

Si requieres hacer scripts más complejos te recomiendo leer las referencias –> http://j.mp/10dD7Zo

Si ahora corremos la aplicación, encontraremos que si ingreso el texto ‘Test’ ocurrirá un “MobileServiceInvalidOperationException”!

Screenshot (299)

Seguramente el usuario de la aplicación no entenderá lo de “MobileServiceInvalidOperationException”, así que es mejor mostrarle algo un poco más humano😉

Es por ello que agregaremos un try-catch y un mensaje de error:

Screenshot (303)

Así se ve en ejecución:

Screenshot (300)

Al tener una aplicación que tiene en cuenta las actividades para realizar, debemos tener presente la fecha en que se anota la actividad, y algún dato del usuario.

Para probar un poco más del poder de Azure, modificaremos el script de ‘Insert’ y al mismo tiempo crearemos dos nuevos campos a la tabla:

-FechaCreacion: Almacenará la fecha de la creación de la actividad

-MiUsuario: Identificará si el usuario se encuentra identificado o es anónimo.

Screenshot (313)

y ahora lo veremos en acción en la aplicación:

Screenshot (314)

Si además quiero ver los nuevos datos en la aplicación deberé agregar un poco de código como se ve en la imagen:

Screenshot (318)

y el resultado será:

Screenshot (319)

Agregando Identificación con Microsoft Account

Para agregar la Identificación para los usuarios con Microsoft Account nos dirigimos a la sección de Identity en Windows Azure Mobile Services:

Screenshot (320)

Allí nos encontraremos con múltiples opciones para identificar a los usuarios de la aplicación, de lo cual el Microsoft Acount solo necesita dos códigos (Client ID, Client Secret)

Para agregar la identificación de usuarios con Microsoft Account y encontrar los dos códigos que nos pide Azure, nos dirigiremos a –> http://j.mp/X60uEd

Screenshot (392)

Nos logeamos y procedemos a  especificar el nombre de la aplicación e idioma:

Screenshot (394)

Y..Al aceptar los términos y condiciones, tendremos los códigos!

Solo debemos proporcionar la URL del WAMS y aceptar:

Screenshot (396)

Llevamos los códigos a Windows Azure:

Screenshot (322)

Antes de empezar a programar el acceso de los usuarios en la aplicación, es recomendable instalar el Live SDK –> http://www.microsoft.com/en-us/download/details.aspx?id=35754

Screenshot (323)

Una vez instalado, agregamos la referencia:

Screenshot (324)

Para agregar el login de Microsoft Account al navegar sobre la aplicación es necesario realizar lo siguiente:

Screenshot (329)

Y el resultado al ejecutar es:

Screenshot (325)

Si logramos logearnos con éxito veremos lo siguiente:

Screenshot (327)

Otra opción es solicitar la identificación cuando el usuario así lo requiera, para ello agregamos un botón:

Screenshot (330)

Si necesitamos almacenar el ID del usuario en la base de datos puedes hacerlo modificando el ‘insert’ del script:

Screenshot (334)

de esta manera el ID del usuario quedará registrado en nuestra base de datos:

Screenshot (333)

Responder

Introduce tus datos o haz clic en un icono para iniciar sesión:

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