Pregunta com.facebook.sdk error 2 en iOS


Tengo una aplicación Phonegap que se ejecuta en iOS y Android. La aplicación tiene una función de inicio de sesión de Facebook que funcionó hasta hace unos días. Algunos de nuestros probadores beta informaron de un error 'No se pudo completar la operación com.facebook.sdk error 2'. Los dispositivos de estos probadores varían: iPhone 5, iPhone 4s, iPod Touch, iOS 5.1.1 e iOS 6.0.

Utilizamos el último SDK de Facebook y un complemento de inicio de sesión de Facebook en Phonegap (https://github.com/davejohnson/phonegap-plugin-facebook-connect/)

Investigué un poco y encontré las siguientes razones por las que podría ocurrir este error:

  • BundleIdentifier y BundleURLName en mi archivo info.plist no coinciden con el ID del paquete en la aplicación Native iOS en la configuración de mi aplicación de Facebook.
  • La aplicación todavía está en modo Sandbox
  • La aplicación está deshabilitada en la Configuración de Facebook (configuración del dispositivo -> Facebook -> Permitir que estas aplicaciones utilicen su cuenta).
  • iOS 6.0 no permite la solicitud de permisos de lectura y escritura al mismo tiempo (no estoy seguro si tengo este derecho).

El siguiente es el caso:

  • El BundleIdentifier y BundleURLName coinciden.
  • La aplicación no está en modo Sandbox.
  • La aplicación no aparece en 'Permitir que estas aplicaciones utilicen su cuenta' de cada usuario
  • Los desarrolladores del plugin Phonegap dijeron haber solucionado el error de permisos de iOS 6.0 (https://github.com/davejohnson/phonegap-plugin-facebook-connect/pull/216)

Es un error muy inconsistente (en mi caso). Solo puedo reproducir el error si desactivo la aplicación en "Permitir que estas aplicaciones utilicen su cuenta" (en mi caso, la aplicación aparece en la lista), pero puedo corregir el error fácilmente al permitir la aplicación nuevamente. Por el momento, la mayoría de los evaluadores no tienen este error (más), pero el error permanece en un iPod (donde la aplicación no aparece en 'Permitir que estas aplicaciones utilicen su cuenta').

¿Alguien tiene alguna idea de por qué estoy teniendo este error?


32
2018-01-04 15:26


origen


Respuestas:


Resulta que: un error com.facebook.sdk 2 se puede traducir en varias cosas. Estoy buscando algún tipo de tabla de traducción de error de Facebook SDK, pero no puedo encontrar uno. En mi caso: El error com.facebook.sdk 2 sucedió porque se agotó el tiempo de espera de la conexión. Los usuarios que obtuvieron este error tenían una mala red / conexión WiFi.

Implementamos un sistema de registro de errores, que registraba los detalles del error cada vez que ocurría un error al iniciar sesión en Facebook. En esos registros, pudimos ver un error com.facebook.sdk 2 sucediendo bastante, pero se resolvió cada vez que el usuario intentó iniciar sesión de nuevo después de unos segundos.

Puede deberse a mi incapacidad para encontrar la documentación correcta, pero estaba y todavía estoy bastante frustrado por la vaguedad de estos errores de SDK. Hay una gran cantidad de documentación sobre la solicitud de permiso (que puede dar como resultado el error com.facebook.sdk 2), pero aparentemente este error puede deberse a más cosas. Sería bueno ver esto documentado en alguna parte también.


17
2018-03-05 11:15



Esto sucedió para una aplicación que estaba usando. Pude sortearlo yendo a la configuración de mi iPhone, seleccionando Facebook, tocando mi nombre y haciendo clic en "eliminar cuenta".

Luego pude iniciar sesión con la aplicación sin problema.

Volví a la configuración | facebook y volví a enviar mis credenciales.

La aplicación todavía funciona bien.


6
2018-05-15 19:21



Tuve este error cuando olvidé comprobar la aplicación de iOS nativo (en la página de desarrolladores de Facebook) y escribí mi identificación de paquete, que es lo mismo que el identificador de paquete en tu proyecto de Xcode. (incluido el nombre de su proyecto al final.) También tuve la configuración en la página de desarrolladores de Facebook que habilitó el modo SandBox. Inhabilité el modo Sandbox también para hacer este trabajo.


5
2018-06-12 06:09



Estaba averiguando el motivo de este error durante mucho tiempo en lo que respecta al antiguo iOS 5.0 para una mayor cobertura de dispositivos. Acabo de recibir el error 400 a través de la depuración de solicitudes de Facebook. Así que finalmente, descubrí que la razón era desconocida FBSessionDefaultAudience para FBSession (estaba probando a 6.0+ y la API nativa de Facebook me dio un error). Y cuando usé

+ (BOOL)openActiveSessionWithPublishPermissions:(NSArray*)publishPermissions
                                defaultAudience:(FBSessionDefaultAudience)defaultAudience
                                   allowLoginUI:(BOOL)allowLoginUI
                              completionHandler:(FBSessionStateHandler)handler;

este error finalmente desapareció.


3
2018-04-23 16:13



INTENTE PRIMERO:

Go to Settings app -> Facebook -> Your App -> Switch it off and back on again.

Esto funcionó para mí, y no me requirió que realmente borrara la cuenta de fb y vuelva a iniciar sesión como lo sugiere @ seans23. Si no hubiera funcionado, lo habría intentado a continuación, pero aparentemente esto fue un truco para restablecer el estado.


1
2018-06-10 07:14



Este enfoque funcionó para mí. (iOS 8)

El contexto:

  • El botón "Iniciar sesión" de FB no abrió la aplicación FB ni FB en Safari
  • Apareció FB SDK err. 2.
  • "My App" no se mostró en la configuración de FB para poder usarlo.

La solución:

  • Borrar la caché web de Safari (puede ser opcional)
  • Eliminar la aplicación de Facebook
  • Eliminar Facebook Messenger
  • Instala tu aplicación e inicia sesión

La idea es eliminar ambos la aplicación de Facebook y el Messenger.


1
2017-10-11 15:28



Para mí, la razón fue que estaba probando mi aplicación en el simulador. Quería compartir una foto y el diálogo simplemente no apareció, así que conecté mi iPhone y todo funcionó bien después.


1
2017-07-21 13:53



tuvimos el mismo problema Como resultado, el motivo está realmente en tiempo de espera en el lado FB, y especialmente si este tiempo de espera se produce mientras la página "FB login" sigue activa y el usuario hace clic en "cancel". En ese caso, el error 2 siempre se restablece. Por lo tanto, si desea repetir y probar esta situación, simplemente haga clic en el botón "cancelar" mientras se conecta en FB.


0
2017-07-16 09:27



En mi caso, creé la aplicación con la cuenta de mi empresa y olvidé agregar mi perfil personal con una función de Desarrollador. Después de descubrir que todo salió bien.

Aclamaciones.


0
2017-10-14 21:32