Flex 4 e facebook-actionscript-api: non riesco a connettermi
-
22-09-2019 - |
Domanda
Ho scritto una semplice applicazione per Facebook e sembra che non riesco a effettuare il login. Ho creato un'applicazione di test su facebook e i test la mia domanda andando a apps.facebook.com /
Ho la seguente funzione che viene eseguito dopo applicationComplete caso di mia applicazione principale.
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');
}
Ho ricevuto un avviso che non sono connesso e non posso prendere alcuna informazione. Ho inserito la chiave API corretta e segreto.
Se non riesce a fare qualcosa, come posso eseguire il debug e vedere esattamente dove non è riuscito?
thansk
Soluzione
quanto segue funziona: private var fbook: Facebook; sessione di private var: 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 -->
}
e ho creato un pulsante che esegue la seguente funzione: (solo dopo che ho effettuato l'accesso-in in Facebook)
private function onConfirmLogin():void{
session.validateLogin();
}