2012-05-19 2 views
0

En Flash j'appelle d'abord l'authentification après la construction, comment éviter le bloqueur de popups.Facebook.init, Facebook.login bloquant le bloqueur de popup

public function FacebookProxy(appID:String, permissions:Object) { 
     this.appID = appID; 
     this.permissions = permissions; 
    } 

    public function authenticate():void { 
     var response:FacebookAuthResponse = Facebook.getAuthResponse(); 
     if(response && response.uid) { 
      this.success(response); 
     } else { 
      this.init(); 
     } 
    } 

    protected function init():void { 
     Security.loadPolicyFile("https://fbcdn-profile-a.akamaihd.net/crossdomain.xml"); 
     Facebook.init(this.appID, this.initHandler); 
    } 

    protected function initHandler(response:FacebookAuthResponse, fail:Object):void { 
     if(response && response.uid){ 
      this.success(response); 
     } else { 
      setTimeout(this.login, 200); 
     } 
    } 

    protected function login():void { 
     Facebook.login(loginHandler, this.permissions); 
    } 

    protected function loginHandler(response:FacebookAuthResponse, fail:Object):void { 
     if(response && response.uid) { 
      this.success(response); 
     } else { 
      //ExternalInterface.call("trace", "code:" + fail.error.code + ", message:" + fail.error.message + ", type:" + fail.error.type); 
     } 
    } 

    protected function success(response:FacebookAuthResponse):void { 
    } 

Répondre

0

Je ne sais pas Flash, mais vous ne pouvez pas appeler Facebook.init, Facebook.login automatiquement, il sera pris par les bloqueurs de pop-up.

Feu ces deux méthodes sur l'activité des utilisateurs uniquement, c'est-à-dire sur un clic de l'utilisateur.

+0

mais authentifier est appelé sur l'activité de l'utilisateur (clic) qui vérifie la session et déclenche init et login s'il ne trouve pas la session. c'est une série d'actions déclenchées par le clic, –

0

D'après ce que je me souviens, la façon la plus friction de se connecter à Facebook (en passant par des applications de jeu, pas populaire, et un écran d'autorisations) est de se connecter à l'aide de l'api js et de transmettre les détails dans le flash

Questions connexes