2016-04-28 85 views
0

我试图使用Facebook SDK在我的应用程序内部创建一个简单的Facebook登录。 一切工作正常,但LoginButton的registerCallback功能无法正常工作。 这是我的代码:java - 使用Android Studio和Facebook SDK实现Facebook登录

@Override 
protected void onCreate(Bundle savedInstanceState) { 
    super.onCreate(savedInstanceState); 

    FacebookSdk.sdkInitialize(getApplicationContext()); 
    callbackManager = CallbackManager.Factory.create(); 

    setContentView(R.layout.activity_main); 
    loginButton = (LoginButton)findViewById(R.id.btn_login); 

    loginButton.registerCallback(callbackManager, new FacebookCallback<LoginResult>() { 
     @Override 
     public void onSuccess(LoginResult loginResult) { 
      message = "Success! "; 
     } 

     @Override 
     public void onCancel() { 
      message = "Cancel!"; 
     } 

     @Override 
     public void onError(FacebookException e) { 
      message = e.getMessage(); 
     } 
    }); 
} 

这是我的主要活动。 然后我继续打印'message'变量,它总是空的,因为没有任何registerCallback函数似乎被执行。 如果我再次尝试登录,Facebook说我已经启用了此应用程序,但我没有收到有关LoginResult的反馈。

回答

0

有你在活动

@Override 
protected void onActivityResult(int requestCode, int resultCode, Intent data) { 
    super.onActivityResult(requestCode, resultCode, data); 
    callbackManager.onActivityResult(requestCode, resultCode, data); 
} 
+0

没错实现onActivityResult,这是我错过了什么!谢谢:D – Riccardo

+0

干杯:),开心的编码 –