0

Flash では、ポップアップ ブロッカーを回避する方法を構築した後、最初に認証を呼び出しています。

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 {
    }
4

2 に答える 2

0

フラッシュはわかりませんが、Facebook.init, Facebook.login自動的に呼び出すことはできません。ポップアップブロッカーによってキャッチされます。

これらの 2 つのメソッドは、ユーザーのアクティビティ、つまりユーザーのクリックに対してのみ起動します。

于 2012-05-19T07:43:36.667 に答える
0

私が覚えている限りでは、Facebook にログインする最も摩擦の少ない方法 (ゲーム アプリ、人気なし、1 つのアクセス許可画面) は、js API を使用してログインし、詳細をフラッシュに渡すことです。

于 2012-05-20T18:15:07.853 に答える