Cómo iniciar sesión en facebook en WebView si ya tiene acceso token de FB SDK en Android
Estoy desarrollando una aplicación para Android en la que tengo acceso a través de Facebook SDK. En la aplicación también tengo comentarios sociales de facebook mostrados en webview. Pero el problema es incluso si el usuario está registrado a través de fb sdk, la webview no sabe sobre ella y para la publicación de nuevo comentario que requiere el usuario para iniciar sesión.
Mi pregunta es: ¿Hay alguna manera de cómo pasar la sesión de sesión de facebook sdk a webview? Por ejemplo, por alguna función javascript a la que doy acceso a cadena de token y lo llaman en webview por lo que se registra y listo para publicar comentarios?
- WebKit / WebView toque / onclick resaltado por defecto (Android Ice Cream Sandwich)
- Leer eventos de teclado en Android WebView
- Desplazamiento de Webview dentro de una vista de desplazamiento
- ¿Cómo abrir la página HTML local en el navegador androide nativo (no en la vista web)?
- Android WebView - Configuración del enfoque de campo HTML con Javascript
Gracias 🙂
- ¿El WebView de Android cifra las contraseñas guardadas?
- ¿Cómo cambiar el tamaño del contenido de una webview en android?
- Habilitación de JavaScript general en WebViewClient
- Android webview html cumplimiento?
- Android: cómo saber si una vista se desplaza
- Android: cómo agregar un teclado virtual personalizado cuando se selecciona el campo de formulario en WebView
- Aplicación android se estrella en el cambio de url de vista web
- Vista web de android que muestra la página en blanco
Así que con lo que he descubierto hasta este punto, no hay forma de pasar sesión loged a WebView.
Aquí está mi solución a este problema: En su servidor remoto haga la página web con la interfaz de inicio de sesión usando Facebook JavaScript SDK y luego mostrarlo en WebView. De esta forma, todos los WebView de tu aplicación compartirán la misma cookie de inicio de sesión y todo funcionará como quieras.
O puedes cargar m.facebook.com directamente, pero de esta manera te llevará a la pared del usuario después de iniciar sesión. Por encima de la solución le ofrece a mostrar otro contenido después de iniciar sesión como usuarios de imagen e información sólo (con el botón de salida, por supuesto).
Espero eso ayude 🙂
Si algún usuario todavía desea utilizar la página de inicio de sesión de Facebook, puede intentar utilizar la interfaz JavaScript de Android para pasar el acceso_token al SDK de Android Facebook.
Puede intentar pasar el access_token del sdk nativo a la vista web a través de la cadena de consulta.
myWebView.loadUrl('http://mydomain.com/?access_token=' + facebookAccessToken);
Y en su comprobación webview si el access_token está establecido y utilizarlo con el javascript sdk, espero que ayude a alguien con el mismo problema.
El servicio de Facebook Rest API ya está obsoleto.
Puede utilizar Facebook SDK para iniciar sesión y acceder a los detalles de Facebook. Consulte la documentación de Facebook.
https://developers.facebook.com/docs/android/login-with-facebook/v2.2
¿Has probado los tutoriales en developers.facebook.com/ , aquí se les dio claramente cómo iniciar sesión. Una vez que haya iniciado sesión los detalles del usuario se almacenarán en caché, si necesita publicar cualquier dato que necesite permiso para ello, se le dirigirá a la actividad de inicio de sesión una vez más. Se da en este enlace