вход в facebook из моего приложения работает на эмуляторе, но не на устройстве
Это мой код для входа в facebook.
mLoginButton = (LoginButton) findViewById(R.id.login);
// restore session if one exists
SessionStore.restore(Utility.mFacebook, this);
SessionEvents.addAuthListener(new FbAPIsAuthListener());
SessionEvents.addLogoutListener(new FbAPIsLogoutListener());
/*
* Source Tag: login_tag
*/
mLoginButton.init(this, AUTHORIZE_ACTIVITY_RESULT_CODE, Utility.mFacebook, permissions);
if (Utility.mFacebook.isSessionValid()) {
requestUserData();
}
public class FbAPIsAuthListener implements AuthListener {
//@Override
public void onAuthSucceed() {
requestUserData();
}
//@Override
public void onAuthFail(String error) {
mText.setText("Login Failed: " + error);
}
}
/*
* The Callback for notifying the application when log out starts and
* finishes.
*/
public class FbAPIsLogoutListener implements LogoutListener {
//@Override
public void onLogoutBegin() {
mText.setText("Logging out...");
}
///@Override
public void onLogoutFinish() {
mText.setText("You have logged out! ");
mUserPic.setImageBitmap(null);
}
}
на эмуляторе он работает идеально. Я пробовал в тоннах 3 устройства, которые уже установлены facebook, и вот проблема.
Он просто вращается вокруг загрузки, и он ничего не делает. Я снова вижу кнопку "Вход". Затем я попытался выйти из исходного приложения facebook, и при нажатии кнопки входа в мое приложение я вижу окно входа в систему, но теперь, когда я раньше видел при входе в эмулятор но окно входа в исходное приложение facebook. Как будто это началось.
код я использую взята из hackbook.java
2 ответов
статус платформы говорит, что есть проблема с SSO.
SSO работает, только если у вас есть приложение facebook, установленное на устройстве android, и то, что вы описываете, вписывается во все это. В эмуляторе у вас нет приложения facebook, и поэтому, когда ваше приложение пытается войти в систему, пользователь использует диалоговое окно в sdk вместо использования процесса SSO, который поставляется с приложением fb.
на устройстве, как вы сказали что у вас есть приложение fb, и поэтому SSO запускается, и, по крайней мере, в настоящее время с ним есть проблема. Попробуйте удалить приложение facebook на устройстве или, возможно, просто отменить SSO, т. е.:Как отключить единый вход Facebook для android-Facebook-android-sdk
вам нужно создать хэш-ключ вашей системы и просто разместить его, отредактировав существующее приложение facebook.