Aprenderemos a desarrollar aplicaciones que interactúen con Facebook, esto por medio del SDK que Adobe actualizó recientemente y el cual nos permite hacerlo mediante ActionScript 3.

Comenzaremos registrándonos como Desarrolladores en la página de Facebook, para así obtener el ID que nos permitirá llevar a cabo el siguiente tutorial. Lo primero es iniciar sesión en Facebook.com y después, en una nueva pestaña del navegador, abrir el siguiente enlace: http://www.facebook.com/developers/ el registro es bastante sencillo y rápido. Teniendo el ID de la aplicación podemos comenzar con este tutorial.

Crearemos un nuevo proyecto Flex que correrá sobre AIR y al cual agregaremos un swc (el cual contiene las librerías que vamos a utilizar y el que puedes descargar aquí: http://code.google.com/p/facebook-actionscript-api/downloads/detail?name=GraphAPI%20Desktop_1_0.swc).

Ya en con el proyecto creado, cambiamos a la vista de diseño y arrastramos un botón desde el panel de componentes a nuestra aplicación. Puede ser un Button por ejemplo.

El siguiente paso es crear un estado y renombrar el estado base, de modo que el primer estado se llame LoggedOut (que será cuando el usuario no allá iniciado sesión) y LoggedIn (que será cuando el usuario allá entrado a su cuenta).

En el estado LoggedIn agregaremos un panel, que será el que contenga dos Labels, un Image, un TextInput y un Button, a los cuales asignaremos un ID y posición dentro del panel.

En la vista de diseño deberemos tener algo así:

Cambiamos a la vista de código y creamos un bloque de Script. La primer función que crearemos será el creationComplete de nuestra aplicación, y que enviara a Facebook el ID de nuestra aplicación y así podamos acceder a la cuenta del usuario.

La función cacharLogin, se encargara de recibir y evaluar la respuesta de Facebook, sea éxito o fallo (depende de que los datos de login sean correctos o incorrectos)

Nuestra siguiente función será la que se encargue de definir los permisos a pedir al usuario cuando inicie sesión en nuestra aplicación, el primero es para acceder a sus actualizaciones en su muro, y el segundo para publicar en él.

Ahora la función que cierre la sesión del usuario en nuestra aplicación:

De la misma forma en que cacharLogin recibe dos valores, uno de éxito y otro de fallo, obtenerEstatus evaluará el resultado y dependiendo de este mostrara la última actualización en el muro del usuario.

Para actualizar el muro del usuario desde nuestra aplicación, enviaremos como parámetro el texto introducido en nuestro TextInput al objeto message, contenido dentro de API.

Y por último la función que recibirá la respuesta de Facebook al haber enviado la actualización al muro del usuario y la cual además se encargara de limpiar el TextInput de nuestra aplicación.

Al primer botón que agregamos en nuestra aplicación, le agregaremos propiedades de posicionamiento sobre “x” y “y”, además de las funciones que ejecutará cuando se le dé click. Y a nuestro segundo botón dentro del panel en el estado LoggedIn, le agregamos un evento de clic que contendrá la función que envía la actualización del muro.

Al ejecutar nuestra aplicación y dar click en nuestro botón, observaremos la popup de logueo en Facebook. Al proporcionar los datos de usuario y contraseña, el usuario deberá permitir a nuestra aplicación acceder a sus datos y actualizaciones en el muro.

Y al permitir a la aplicación estos permisos, el panel que agregamos mostrara tanto el nombre del usuario, como su avatar y última actualización en el muro. Para finalizar con este tutorial, bastará escribir algo en el TextInput de nuestra aplicación y ver que tanto en nuestra aplicación, como en Facebook ha sido publicada dicha actualización.

Para aprender esta y más técnicas no olviden revisar la oferta de cursos de Flex que tenemos en Activ, empezando por el Diplomado Flex nuestra especialidad.