Facebook Login CallbackManager FacebookCallback llamado onCancel () cada vez

Estoy implementando el inicio de sesión a través de facebook y obtener la identificación del usuario de correo electrónico con SDK 4.1.0 como se muestra en la documentación de facebook, pero el problema que ocurre es que cada vez después onActivityResult cuando registerCallback se llama entonces en lugar de onSuccess onCancel se llama.

package com.dexterous.hellologin; import android.content.Intent; import android.os.Bundle; import android.support.v7.app.ActionBarActivity; import android.util.Log; import com.facebook.CallbackManager; import com.facebook.FacebookCallback; import com.facebook.FacebookException; import com.facebook.FacebookSdk; import com.facebook.login.LoginResult; import com.facebook.login.widget.LoginButton; public class MainActivity2 extends ActionBarActivity { CallbackManager callbackManager; @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); FacebookSdk.sdkInitialize(getApplicationContext()); callbackManager = CallbackManager.Factory.create(); setContentView(R.layout.activity_main_activity2); LoginButton loginButton = (LoginButton) findViewById(R.id.login_button); loginButton.setReadPermissions("email"); // If using in a fragment // loginButton.setFragment(this); // Other app specific specialization // Callback registration loginButton.registerCallback(callbackManager, new FacebookCallback<LoginResult>() { @Override public void onSuccess(LoginResult loginResult) { // App code Log.e("TAG", "success"); } @Override public void onCancel() { // App code Log.e("TAG", "onCancel"); } @Override public void onError(FacebookException exception) { // App code Log.e("TAG", "error"); } }); } @Override protected void onActivityResult(int requestCode, int resultCode, Intent data) { super.onActivityResult(requestCode, resultCode, data); callbackManager.onActivityResult(requestCode, resultCode, data); Log.e("TAG", "onActivityResult"); } } 

Cada vez que estoy recibiendo salida

OnActivityResult

EnCancel

Ni estoy recibiendo esa pantalla de inicio de sesión de facebook con botones cancelar y iniciar sesión.

Después de desinstalar la aplicación de facebook de error de móvil cambiado a ID de aplicación no válido

Y esto es stacktrace

06-04 10: 55: 16.631 19864-19864 / com.dexterous.hellologin I / WebViewFactory: Cargando la versión 42.0.2311.138 de com.google.android.webview (código 2311138) 06-04 10: 55: 16.706 19864-19864 / com .dexterous.hellologin I / LibraryLoader: Tiempo para cargar bibliotecas nativas: 4 ms (marcas de tiempo 8772-8776) 06-04 10: 55: 16.706 19864-19864 / com.dexterous.hellologin I / LibraryLoader: Número de versión de la biblioteca nativa esperada " , Número de versión de la biblioteca nativa real "" 06-04 10: 55: 16.717 19864-19864 / com.dexterous.hellologin W / art: Intento de eliminar la entrada de alcance de mango local de IRT, ignorando 06-04 10: 55: 16.816 19864- 19864 / com.dexterous.hellologin V / WebViewChromiumFactoryProvider: Binding Chromium to looper principal Looper (main, tid 1) {28a6fbd9} 06-04 10: 55: 16.816 19864-19864 / com.dexterous.hellologin I / LibraryLoader: Biblioteca nativa esperada Número de versión "", número de versión de biblioteca nativa real "" 06-04 10: 55: 16.819 19864-19864 / com.dexterous.hellologin I / cromo: [INFO: library_loader_hooks.cc (112)] Chromium loggin G enabled: level = 0, verbosity por defecto = 0 06-04 10: 55: 16.834 19864-19864 / com.dexterous.hellologin I / BrowserStartupController: Inicializando el proceso de cromo, singleProcess = true 06-04 10: 55: 16.838 19864-19864 /com.dexterous.hellologin W / art: Intento de eliminar la entrada de ámbito de mango local de IRT, ignorando 06-04 10: 55: 16.841 19864-19864 / com.dexterous.hellologin E / SysUtils: ApplicationContext es null en ApplicationStatus 06-04 10: 55: 16.869 19864-19864 / com.dexterous.hellologin W / chromium: [AVISO: resource_bundle.cc (286)] locale_file_path.empty () 06-04 10: 55: 16.870 19864-19864 / com.dexterous.hellologin I / cromo: [INFO: aw_browser_main_parts.cc (63)] Cargar desde apk con éxito, fd = 63 off = 46992 len = 3337 06-04 10: 55: 16.871 19864-19864 / com.dexterous.hellologin I / INFORMACIÓN: aw_browser_main_parts.cc (76)] Cargando webviewchromium.pak de, fd: 64 desactivado: 7953032 len: 1161174 06-04 10: 55: 17.024 19864-19953 / com.dexterous.hellologin W / cromo: [WARNING: data_reduction_proxy_config. Cc (150)] SPDY Proxy OFF en el inicio 06-04 10: 55: 17.047 19864-19864 / com.dexterous.hellologin W / art: Intento de eliminar la entrada de ámbito de mango local de IRT, ignorando 06-04 10: 55: 17.060 19864-19864 / com. Dexterous.hellologin W / AwContents: onDetachedFromWindow llamado cuando ya está separado. Ignorar 06-04 10: 55: 24.893 19864-19864 / com.dexterous.hellologin W / BindingManager: No se puede llamar a determinadoVisibility () – nunca vio una conexión para el pid: 19864 06-04 10: 55: 26.140 19864-20020 / com .dexterous.hellologin E / Adreno-ES20:: Formato de textura no válido! Devolución de error! 06-04 10: 55: 26.140 19864-20020 / com.dexterous.hellologin E / Adreno-ES20:: Accesorio de color de Framebuffer incompleto. Regresando GL_FRAMEBUFFER_INCOMPLETE_ATTACHMENT! 06-04 10: 55: 26.198 19864-19912 / com.dexterous.hellologin E / Adreno-ES20:: Formato de textura no válido! Devolución de error! 06-04 10: 55: 26.198 19864-19912 / com.dexterous.hellologin E / Adreno-ES20:: Accesorio de color de Framebuffer incompleto. Regresando GL_FRAMEBUFFER_INCOMPLETE_ATTACHMENT! 06-04 10: 58: 32.287 19864-19864 / com.dexterous.hellologin E / TAG: onCancel 06-04 10: 58: 32.287 19864-19864 / com.dexterous.hellologin E / TAG: onActivityResult 06-04 10:59 : 25.498 19864-19864 / com.dexterous.hellologin I / art: Explícito concurrente marca barrido GC liberado 16056 (1325 KB) AllocSpace objetos, 0 (0B) LOS objetos, 39% libre, 9MB / 16MB, pausado 856us total 79.028ms

Manifiesto

 <uses-permission android:name="android.permission.INTERNET" /> <uses-permission android:name="android.permission.BLUETOOTH"/> <application android:allowBackup="true" android:icon="@mipmap/ic_launcher" android:label="@string/app_name" android:theme="@style/AppTheme" > <activity android:name="com.dexterous.hellologin.MainActivity2" android:label="@string/app_name" > <intent-filter> <action android:name="android.intent.action.MAIN" /> <category android:name="android.intent.category.LAUNCHER" /> </intent-filter> </activity> <activity android:name="com.facebook.FacebookActivity" android:configChanges="keyboard|keyboardHidden|screenLayout|screenSize|orientation" android:label="@string/app_name" android:theme="@android:style/Theme.Translucent.NoTitleBar" /> <activity android:name=".MainActivity" android:label="@string/title_activity_main_activity2" > </activity> <meta-data android:name="com.facebook.sdk.ApplicationId" android:value="1437829111203883" /> </application> </manifest> 

3 Solutions collect form web for “Facebook Login CallbackManager FacebookCallback llamado onCancel () cada vez”

El problema es que estás usando Facebook APPId directamente y deberías usarlo así

 <meta-data android:name="com.facebook.sdk.ApplicationId" android:value="@string/app_id" /> 

En picadura xml

 <string name="app_id">1437829111203883 </string> 

Me di cuenta de que el onCancel () sigue siendo llamado porque el usuario ya ha iniciado sesión. Intente llamar a LoginManager.getInstance().logOut() antes de iniciar su secuencia de inicio de sesión

Intenta dar permiso a la línea de facebook:

 LoginManager.getInstance().logInWithReadPermissions(Mainactivity2.this, Arrays.asList("public_profile", "email")); 
  • Pantalla de inicio de Android Facebook no hay teclado
  • Android - Facebook SDK login -> cerrar sesión -> inicio de sesión no funciona
  • Facebook Android SDK 4.0.0 no obtener información del perfil
  • android - cómo cambiar el texto en facebook botón de inicio de sesión
  • El estado de Facebook no se actualizó. Error 403, error de autenticación, SocialAuthException en Android
  • La devolución de llamada de inicio de sesión no se activa mediante facebook-android-sdk 4
  • Facebook SDK para Android - el primer inicio de sesión es muy lento / lleva mucho tiempo
  • 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
  • Inicio de sesión de Facebook en el fragmento en android
  • Facebook Login / Google Login - ¿La misma actividad?
  • Cómo cambiar la altura del botón 'Iniciar sesión con Facebook'?
  • FlipAndroid es un fan de Google para Android, Todo sobre Android Phones, Android Wear, Android Dev y Aplicaciones para Android Aplicaciones.