我想获取用户个人资料数据; 我正在学习本教程:
http://code.tutsplus.com/tutorials/quick-tip-add-facebook-login-to-your-android-app--cms-23837
上面的教程使用了这样的registerCallback
方法:
private LoginButton loginButton;
.
.
.
loginButton.registerCallback(callbackManager, new FacebookCallback<LoginResult>() {
@Override
public void onSuccess(LoginResult loginResult) {
}
@Override
public void onCancel() {
}
@Override
public void onError(FacebookException e) {
}
});
现在,如何为自定义 Button 实现此方法?
下面的链接使用 Facebook 类,但对我来说这个类未定义!
// Instance of Facebook Class
private Facebook facebook;
http://www.androidhive.info/2012/03/android-facebook-connect-tutorial/
最佳答案
您可以使用 LoginManager无需使用 LoginButton 即可完成。
首先,您必须像往常一样创建CallbackManager
:
callbackManager = CallbackManager.Factory.create();
接下来,您必须注册使用 LoginManager
实例创建的回调:
LoginManager.getInstance().registerCallback(callbackManager, new FacebookCallback<LoginResult>() {
@Override
public void onSuccess(LoginResult loginResult) {
}
@Override
public void onCancel() {
}
@Override
public void onError(FacebookException error) {
}
});
最后,您必须使用某些权限调用 Facebook 登录,例如:
LoginManager.getInstance().logInWithReadPermissions(this, Arrays.asList("email"));
不要忘记覆盖 onActivityResult
方法并从 CallbackManager
调用 onActivityResult
方法:
@Override
public void onActivityResult(int requestCode, int resultCode, Intent data) {
super.onActivityResult(requestCode, resultCode, data);
callbackManager.onActivityResult(requestCode, resultCode, data);
}
关于android - 自定义按钮的 registerCallback 方法 - facebook sdk,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31709106/