在as3 air mobile app中获取用户的facebook信息

时间:2014-02-03 21:27:39

标签: android facebook actionscript-3 air user-data

我正在开发一个使用Facebook用户名并通过的移动应用程序。我在尝试检索用户详细信息时遇到运行时错误。我正在使用as3 Facebook api。

ArgumentError: Error #1063: Argument count mismatch on Classes::WebViewLogin/userData(). Expected 0, got 2.

这是我的代码

public function callInit (){
        FacebookMobile.init(APP_ID, onInit);
    }

    public function onInit(success:Object, fail:Object):void{
        if (success){ 
            trace("Already logged in");
        }
        else{
            trace("Not logged in");
            addChild(logInBtn);
            logInBtn.x = logInBtn.y =200;
            logInBtn.addEventListener(TouchEvent.TOUCH_BEGIN, logInbtnPressed);
        }
    }

    private function logInbtnPressed(e:TouchEvent){
        trace("-----------log in btn pressed-----------");
        removeChild(logInBtn);

        webView.stage = stage;
        webView.viewPort = new Rectangle(10, 10, (stage.stageWidth -15), (stage.stageHeight - 15));
        FacebookMobile.login( onLogin , this.stage, extendedPermissions, webView);
    }

    public function onLogin(success:Object, fail:Object):void{
        trace ("onLogin function called");
        if (success){
            trace("Logged In\n");
            //accessCamera.loggedIn();

            getUserData();

            addChild(logOutBtn);
            logOutBtn.x = logInBtn.y =200;
            logOutBtn.addEventListener(TouchEvent.TOUCH_BEGIN, onLogout);
        }
        else{
            trace("Login Failed\n");
            logInErr.text = "Error logging in to Facebook";
            addChild(logInErr);
            logInErr.border = true;

            addChild(logInBtn);
            logInBtn.x = logInBtn.y =200;
            logInBtn.addEventListener(TouchEvent.TOUCH_BEGIN, logInbtnPressed);
        }
    }

    public function getUserData(){
                    //-----------possible suspect line---------------//
        FacebookMobile.api("/me" , userData);
    }

    public function userData(){
        trace ("userdata method");
    }

    public function onLogout(success:Boolean):void {
        removeChild(logOutBtn);
        trace("Log out");
    }

    private function logOutbtnPressed(){
        FacebookMobile.logout();
    }

我是使用Facebook和移动应用程序的新手,并且在使用此API时几乎找不到任何帮助。任何帮助将不胜感激。

编辑有关我遇到的问题的任何帮助而不是替代方法?

2 个答案:

答案 0 :(得分:1)

如果您需要快速的东西,可以从Milkman http://www.milkmangames.com/blog/tools/购买GoViral,他们将提供大约50美元的教程和电子邮件支持

答案 1 :(得分:0)

也许更好的方法是在这里使用FreshPlanet ANE: https://github.com/freshplanet/ANE-Facebook

它专为移动设备编写,因此您可以使用设备的直接连接