Flex 4 y facebook-actionscript-api: No se puede iniciar sesión
-
22-09-2019 - |
Pregunta
Me escribió una sencilla aplicación para facebook y parece que dejo de inicio de sesión. He creado una aplicación de prueba en facebook y probar mi aplicación yendo a apps.facebook.com /
Tengo la siguiente función que está siendo ejecutado después de applicationComplete caso de mi aplicación principal.
private function initFacebook():void {
fbApiKey = "API_KEY";
fbSecret = "SECRET";
fbLoaderInfo = stage.loaderInfo;
fbSession = new FacebookSessionUtil( fbApiKey, fbSecret, fbLoaderInfo);
fbSession.addEventListener( FacebookEvent.WAITING_FOR_LOGIN, fbWaitingForLoginHandler, false, 0, true );
fbSession.addEventListener( FacebookEvent.CONNECT, fbConnectHandler, false, 0, true );
fbSession.login();
}
private function fbWaitingForLoginHandler( e:FacebookEvent ):void
{
fbSession.validateLogin();
}
private function fbConnectHandler( e:FacebookEvent ):void
{
Alert.show(fbSession.facebook.is_connected ? ' connected' : 'not connected');
}
Obtener un aviso de que no estoy conectado y no puede recuperar cualquier información. Entré en la clave de la API adecuada y secreto.
Si no puede hacer algo, ¿Cómo puedo depurar y ver exactamente donde fracasó?
thansk
Solución
la siguiente funciona: FBOOK private var: Facebook; var sesión privada: FacebookSessionUtil; private var fbUser: FacebookUser;
private function initFacebook():void {
session=new FacebookSessionUtil(API_KEY,SECRET,loaderInfo);
session.addEventListener(FacebookEvent.CONNECT,onConnect);
fbook=session.facebook;
session.login();
}
private function onConnect(e:FacebookEvent):void{
var call:FacebookCall=fbook.post(new GetInfo([fbook.uid],[GetInfoFieldValues.ALL_VALUES]));
call.addEventListener(FacebookEvent.COMPLETE,onGetInfo);
}
private function onGetInfo(e:FacebookEvent):void{
this.fbUser=(e.data as GetInfoData).userCollection.getItemAt(0) as FacebookUser;
<!-- fetching facebook user information from this.fbUser -->
}
y yo creamos un botón que ejecuta la siguiente función: (sólo después de que haya iniciado una sesión en Facebook)
private function onConfirmLogin():void{
session.validateLogin();
}