我正在尝试将Facebook Android SDK集成到我的应用程序中,但我似乎无法获得最基本的身份验证。我有我的项目设置,我的Facebook App ID,所需的一切。
我使用简单的OnClickListener()启动Facebook身份验证:
signIn_Facebook.setOnClickListener(new OnClickListener() {
@Override
public void onClick(View v)
{
Log.i("MyTag", "Facebook authorize about to start.");
facebook.authorize(SignIn.this, new FacebookLoginDialogListener());
}
});
我的问题是DialogListener中没有任何方法被调用:
private class FacebookLoginDialogListener implements DialogListener {
public void onComplete(Bundle values)
{
Log.i("MyTag", "Facebook authorize complete.");
}
@Override
public void onFacebookError(FacebookError error) {
Log.i("MyTag", "Facebook authorize facebook error.");
}
@Override
public void onError(DialogError e)
{
Log.i("MyTag", "Facebook authorize dialog error.");
}
@Override
public void onCancel()
{
Log.i("MyTag", "Facebook authorize cancel.");
}
}
当此代码在应用程序上运行时,Facebook对话框打开,您可以登录,然后它就会关闭 - 没有错误 - 但是FacebookLoginDialogListener类中的日志消息(或断点)都不会被调用。 / p>
我觉得我错过了一些非常明显的东西。感谢...
只需添加:
protected void onActivityResult(int requestCode, int resultCode, Intent data) {
facebook.authorizeCallback(requestCode, resultCode, data);
}
答案 0 :(得分:0)
试试这个:
私人Facebook mFb; private String [] mPermissions;mFb.authorize(mActivity,mPermissions,new LoginDialogListener());
别的,只要问;)