WebSocket en Android WebView
Hoy mi problema es que estoy desarrollando una aplicación que está utilizando un WebSocket. En iOS todo está funcionando bien, pero en android, WebView no es compatible con WebSocket. ¿Cuál es la manera más rápida / más elegante de resolver este problema?
[editar]
- Cargar un archivo SWF en un WebView
- ¿Cómo puedo copiar y pegar desde una vista web iónica?
- Android - Utilice OkHttp con Webview
- Android carga los datos html en las pestañas personalizadas de cromo
- Trigger o Force Redraw o Re-Render de WebView
Como este post se ve bastante a menudo quiero compartir algunas posibles soluciones.
Soluciones:
- Implementación del cliente de Java Websocket y interfaz JavaScript
- PHP Websocket Client Implementación y hacer una solicitud de fondo (es decir, jQuery GET) a la secuencia de comandos PHP (trabajado para mí como yo quería enviar sólo una línea de mensaje.)
Bibliotecas Websocket de Android
- Http://autobahn.ws/
- Http://code.google.com/p/weberknecht
Alguien tuvo el mismo problema y describió cómo trabajó alrededor
- Http://chpeck.tumblr.com/post/37273036645/socket-io-with-android-webview
- Mostrar una barra de progreso en una ficha secundaria hasta que el WebView se cargue
- Inconsistencias con el video HTML5 en un WebView de Android
- IScroll no funciona en android a menos que realice un cambio de orientación y regrese
- ¿Es -webkit-column-break-before compatible con Android 2.3 WebView?
- Android WebView para Facebook como botón
- El teclado Android no se muestra al hacer clic en la entrada en la vista web
- Android WebView - Configuración del enfoque de campo HTML con Javascript
- Mostrar el teclado virtual en AlertDialog con un WebView dentro (Android)
La vista web de Android no admite WebSocket. Por lo que necesita implementar con alguna biblioteca de WebSocket.
JWebSocket http://jwebsocket.org/
Weberknecht http://code.google.com/p/weberknecht/
He creado un proyecto de ejemplo que agrega el objeto WebSocket al WebView para phonegap. Puede encontrarlo aquí: https://github.com/pusher/pusher-phonegap-android
Puse un video sobre el proyecto aquí: http://blog.pusher.com/2012/7/5/pusher-on-phonegap-for-android
He utilizado este proyecto para demostrar cómo usar PhoneGap con Pusher en Android, pero en última instancia, es sólo un proyecto que pasa a incluir la etiqueta de script Pusher. Podría utilizar fácilmente otra biblioteca que necesite el objeto WebSocket
o simplemente usarlo directamente.
Utiliza la biblioteca websocket-android-phonegap: https://github.com/anismiles/websocket-android-phonegap