I am integrating Facebook Login into my app. Logging in works, but when I logoff and try to log back in again, I get the following error: "Invalid key hash. The key hash "..." does not match any stored key hashes. Configure your app key hashes at http://developers.facebook.com/apps/ ..."
The error only occurs after I try to login for a second time. Below is the code I used. Where am I going wrong?
public class LoginActivity extends AppCompatActivity {
private CallbackManager mCallbackManager;
private LoginButton loginButton;
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
FacebookSdk.sdkInitialize(this.getApplicationContext());
setContentView(R.layout.activity_login);
mCallbackManager = CallbackManager.Factory.create();
LoginManager.getInstance().registerCallback(mCallbackManager,
new FacebookCallback<LoginResult>() {
@Override
public void onSuccess(LoginResult loginResult) {
Log.i("LOGINFACEBOOK", "onSuccess? " + loginResult.toString());
}
@Override
public void onCancel() {
Log.i("LOGINFACEBOOK", "onCancel");
}
@Override
public void onError(FacebookException exception) {
Log.i("LOGINFACEBOOK", "onError? " + exception.toString());
}
});
LoginButton loginButton = (LoginButton) findViewById(R.id.login_button);
loginButton.registerCallback(mCallbackManager, new FacebookCallback<LoginResult>() {
@Override
public void onSuccess(LoginResult loginResult) {
Log.i("LOGINFACEBOOK", "loginButton onSuccess? " + loginResult.toString());
}
@Override
public void onCancel() {
Log.i("LOGINFACEBOOK", "loginButton onCancel");
}
@Override
public void onError(FacebookException error) {
Log.i("LOGINFACEBOOK", "loginButton onError? " + error.toString());
}
});
}
@Override
protected void onActivityResult(int requestCode, int resultCode, Intent data) {
super.onActivityResult(requestCode, resultCode, data);
mCallbackManager.onActivityResult(requestCode, resultCode, data);
}
}