Comunidad de diseño web y desarrollo en internet online

Conectar ActionScript 3 con Facebook usando la API de Adobe

Hace unos días me comenzó la curiosidad de poder hacer una aplicación para Facebook en ActionScript 3, después de muchos dolores de cabeza, pruebas, ningún ejemplo bueno en Internet que explique bien como poder conectar Flash o Flex con la Api de Facebook, encontré la página donde Adobe está desarrollando una API para conectarse localmente o externamente, directamente a la plataforma de Facebook.

Bien lo que les vengo a ofrecer es evitarles el mismo dolor de cabeza y perdida de tiempo que me causo a mi tratar de conectarme a Facebook, asi que a continuación les dejo el código limpio para poder conectarse a la plataforma de Facebook. :wink:

Aviso Importante: este método solo funciona sobre Facebook, no funciona localmente, para generar aplicaciones localmente ver este video.

Veamos algo de código..
Importamos todas las clases que vamos a utilizar para el desarrollo

Código :

import com.facebook.commands.profile.SetFBML;
import com.facebook.commands.users.HasAppPermission;
import com.facebook.commands.users.GetInfo;
import com.facebook.data.users.GetInfoData;
import com.facebook.data.BooleanResultData;
import com.facebook.data.auth.ExtendedPermissionValues;
import com.facebook.data.users.HasAppPermissionValues;
import com.facebook.data.users.GetInfoFieldValues;
import com.facebook.data.users.FacebookUser;
import com.facebook.errors.FacebookError;
import com.facebook.events.FacebookEvent;
import com.facebook.net.FacebookCall;
import com.facebook.Facebook;
import com.facebook.session.WebSession;
import com.facebook.utils.FacebookSessionUtil


Ahora vamos a obtener todas las variables que Facebook nos pasa por FlashVars, estas variables contienen información importante para el desarrollo.
También comenzamos a generar las variables que utilizaremos en la aplicación.

Código :

var flashVarsParams:Object = loaderInfo.parameters;

var fbSessionUtil:FacebookSessionUtil = new FacebookSessionUtil("*ApyKey", null, loaderInfo);
fbSessionUtil.addEventListener(FacebookEvent.CONNECT, onFacebookConnect, false, 0, true);
var fb:Facebook = fbSessionUtil.facebook;
var user:FacebookUser;

*ApyKey: Es el código que Facebook te da al crear un nuevo espacio para tu aplicacíón.

Ahora vamos a generar las funciones que nos permitan interactuar con la base de datos de Facebook.

Código :

function isAppAllowed(SessionKey:String):void {
   if (SessionKey != null) {
      fbSessionUtil.verifySession();
   } else {
      shown.text="Facebook nesesita validad al usuario.";
   }
}
isAppAllowed(flashVarsParams.fb_sig_session_key);

function onFacebookConnect(e:FacebookEvent):void { 
   if (e.success){
      setApplicationFBML();
   } else {
      shown.text="Error, No se puede conectar a Facebook.";
   }
}

function setApplicationFBML():void{
   var call:FacebookCall=fb.post(new GetInfo([fb.uid],[GetInfoFieldValues.ALL_VALUES]));
   call.addEventListener(FacebookEvent.COMPLETE,onGetInfo);
}

function onGetInfo(e:FacebookEvent):void{
   user=(e.data as GetInfoData).userCollection.getItemAt(0) as FacebookUser;
   trace("Hello "+user.first_name+" "+user.last_name);
}


Listo con esas pocas lineas de código podemos conectarnos a la plataforma de Facebook y obtener de la base de datos
la información de los usuarios. ^^

¿Sabes SQL? ¿No-SQL? Aprende MySQL, PostgreSQL, MongoDB, Redis y más con el Curso Profesional de Bases de Datos que empieza el martes, en vivo.

Publica tu comentario

o puedes...

¿Estás registrado en Cristalab y quieres
publicar tu URL y avatar?

¿No estás registrado aún pero quieres hacerlo antes de publicar tu comentario?

Registrate