我正在开发一个使用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时几乎找不到任何帮助。任何帮助将不胜感激。
编辑有关我遇到的问题的任何帮助而不是替代方法?
答案 0 :(得分:1)
如果您需要快速的东西,可以从Milkman http://www.milkmangames.com/blog/tools/购买GoViral,他们将提供大约50美元的教程和电子邮件支持
答案 1 :(得分:0)
也许更好的方法是在这里使用FreshPlanet ANE: https://github.com/freshplanet/ANE-Facebook
它专为移动设备编写,因此您可以使用设备的直接连接