solas puedo porque plus las home descargar como cierran cerrar boton app aplicaciones actualizar abre iphone facebook web-applications mobile web

iphone - plus - porque no puedo descargar aplicaciones de app store



pantalla blanca en blanco después de iniciar sesión FB a través de la aplicación web? (4)

Todo lo que necesita hacer es agregar "display: ''touch''" y redirect_uri parameters al inicio de sesión como:

FB.login(function(response) { if (response.authResponse) { console.log(''Welcome! Fetching your information.... ''); FB.api(''/me'', function(response) { console.log(''Good to see you, '' + response.name + ''.''); FB.logout(function(response) { console.log(''Logged out.''); }); }); } else { console.log(''User cancelled login or did not fully authorize.''); } }, {scope: ''email,publish_stream'' , redirect_uri: ''YOUR_REDIRECT_URL'' , display : ''touch''});

Intenté seguir la guía de "inicio" de la FB para dispositivos móviles en https://developers.facebook.com/docs/guides/mobile/web/ para una aplicación web que abro a pantalla completa en mi iPhone.

pero cuando intento iniciar sesión utilizando la página de inicio de sesión de fb que se abre, aparece una pantalla blanca en blanco después de hacer clic en el botón "iniciar sesión". Sin embargo, el usuario ha iniciado sesión ... Lo sé porque si cierro y vuelvo a abrir mi aplicación web, verifico el estado de inicio de sesión y trato de obtener cierta información de usuario, y funciona bien ...

Cuando pruebo la misma aplicación web en el escritorio de mi cromo o en el safari de mi iPhone, el proceso de inicio de sesión está bien ... solo se rompe desde la aplicación web de pantalla completa.

¿¿algunas ideas?? Solo estoy siguiendo el código de muestra de FB :-(

Gracias.



He encontrado una solución al problema ... parece que hay un atributo ''redirect_uri'' no documentado que puedo usar en el método de inicio de sesión (), por ejemplo

login({scope:''email'', redirect_uri:''where_to_go_when_login_ends''})

Está documentado para los SDK de escritorio, así que lo intenté y funciona. Cuando digo "algo así", me refiero a que en la web móvil parece correcto, pero si intentas ejecutarlo en un navegador de escritorio, la ventana emergente de acceso se redireccionará a la url dada dentro de la ventana emergente de inicio de sesión, no dentro de su ventana principal .

Espero que esto sea lo suficientemente bueno y no cause ningún efecto secundario, realmente no puedo decirlo. Pero esto es lo que utilizaré mientras tanto por falta de otras opciones: ^)


Encontré una mejor respuesta en esta publicación: FB.login broken flow para iOS WebApp

var permissions = ''email,publish_stream,manage_pages,read_stream''; var permissionUrl = "https://m.facebook.com/dialog/oauth?client_id=" + m_appId + "&response_type=code&redirect_uri=" + encodeURIComponent(m_appUrl) + "&scope=" + permissions; window.location = permissionUrl;

La respuesta de Mark anterior ya no funciona ... Facebook tiende a romper las cosas a menudo de esta manera. Mostrando la página de inicio de sesión utilizando window.location hace el truco.

Mi aplicación requirió una actualización después de mi inicio de sesión, por lo que funcionó muy bien. Por lo tanto, es posible que deba reconsiderar su flujo si no desea actualizar.