Inicio de sesión de Facebook con la aplicación no instalada redirecciona a la página de inicio de sesión
En Android
seguí el ejemplo de inicio de Session
sesión para crear el flujo de inicio de sesión de una aplicación en la que estoy trabajando. El problema que tengo es en algunos dispositivos si la aplicación de Facebook
no se instala cuando el usuario inicia sesión a través de Facebook
través de WebDialog
, a continuación, la página parece redireccionar de nuevo a la página de inicio de sesión.
Estoy usando Facebook
sdk 3.0.1, también he actualizado a 3.5 para ver si eso podría arreglar mi problema, no lo hizo. El ejemplo proporcionado en el sdk 3.0.1 ni siquiera funciona y la muestra incluida con el 3.5 sdk se comporta exactamente igual que mi aplicación.
- No se puede reloginar con las credenciales de Facebook después de cerrar la sesión
- La aplicación proxy no puede solicitar permisos de publicación sin haber sido instalados previamente
- Cómo cambiar el idioma de com.facebook.widget.LoginButton en Android
- Facebook Login No Regresar Usuario access_token
- El botón de inicio de sesión de Facebook no está ejecutando la devolución de llamada al hacer clic
He probado este código a continuación en otros dispositivos que no tienen la aplicación de Facebook
instalado y funcionan bien. Pero cuando intento esto en mi Nexus 7 (4.3 instalado) me encuentro con el problema descrito anteriormente.
¿Algunas ideas?
private Session.StatusCallback statusCallback = new SessionStatusCallback(); @Override public void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity); Settings.addLoggingBehavior(LoggingBehavior.INCLUDE_ACCESS_TOKENS); Session session = Session.getActiveSession(); if (session == null) { if (savedInstanceState != null) { session = Session.restoreSession(this, null, statusCallback, savedInstanceState); } if (session == null) { session = new Session(this); } Session.setActiveSession(session); if (session.getState().equals(SessionState.CREATED_TOKEN_LOADED)) { session.openForRead(new Session.OpenRequest(this).setCallback(statusCallback)); } } } @Override public void onStart() { super.onStart(); Session.getActiveSession().addCallback(statusCallback); } @Override public void onStop() { super.onStop(); Session.getActiveSession().removeCallback(statusCallback); } @Override public void onActivityResult(int requestCode, int resultCode, Intent data) { super.onActivityResult(requestCode, resultCode, data); Session.getActiveSession().onActivityResult(this, requestCode, resultCode, data); } @Override protected void onSaveInstanceState(Bundle outState) { super.onSaveInstanceState(outState); Session session = Session.getActiveSession(); Session.saveSession(session, outState); } private void Login() { Session session = Session.getActiveSession(); if (!session.isOpened() && !session.isClosed()) { session.openForRead(new Session.OpenRequest(this).setCallback(statusCallback)); } else { Session.openActiveSession(this, true, statusCallback); } } private void Logout() { Session session = Session.getActiveSession(); if (!session.isClosed()) { session.closeAndClearTokenInformation(); } } private class SessionStatusCallback implements Session.StatusCallback { @Override public void call(Session session, SessionState state, Exception exception) { //check session and see if we are logged in. } }
Editar: Una actualización de esto. He intentado este mismo ejemplo / aplicación en un Samsung Galaxy S4 (Running 4.2.2) Número de modelo SGH-I337, y no está funcionando en este dispositivo tampoco. Hace algo un poco diferente en que le permitirá golpear bien si ha aprobado la aplicación en Facebook
o le permitirá ir a través de los movimientos para permitir la aplicación a través de Facebook
, pero luego se mostrará una página diciendo "Error Not Logged In: Usted no se ha identificado. Por favor, inicie sesión y vuelva a intentarlo. "
Editar 2: En un intento de verificar que esto no es exclusivo de nuestra aplicación, instalamos Candy Crush y obtuvimos el mismo error.
- Android facebook Api Exception
- La devolución de llamada de inicio de sesión no se activa mediante facebook-android-sdk 4
- ¿Cómo detectar un evento de cierre de sesión con la API de Android de Facebook v4?
- Error de inicio de sesión: hay un error al iniciar sesión en esta aplicación. Por favor, inténtelo de nuevo más tarde
- android - cómo cambiar el texto en facebook botón de inicio de sesión
- Error de permiso publish_actions
- Android - Facebook SDK login -> cerrar sesión -> inicio de sesión no funciona
- Error en la entrada de Facebook de Android
Es probablemente sólo un error con Facebook, enviar un informe de error a ellos y especificar los dispositivos y aplicaciones que probó y sus respectivos resultados. Aquí está exactamente el mismo error informado en el sitio web de Facebook: https://developers.facebook.com/bugs/160597354148944
Facebook respondió a esto diciendo "no hay suficiente evidencia, estamos cerrando esto", pero tal vez si publica más pruebas, entonces podrían volver a abrir y arreglar esto.
- Enviar / Recibir archivo / imagen Socket C # Android
- Saltos de línea con WCF, JSON y un cliente que no sea Windows