Conecte con los clientes de iOS y Android a SockJS Backend
Estoy desarrollando el backend de mensajería de WebSocket usando Spring WebSockets , que utiliza el protocolo SockJS + STOMP. La razón por la cual no usar WebSockets es porque necesitaré aprovechar la integración de seguridad que SockJS provee en Spring WebSockets y otras características de SockJS, como habitaciones, suscripciones, etc. Me preguntaba si esta es una buena opción para usar De manera que las aplicaciones móviles (iOS y Android) y las aplicaciones cliente Web puedan conectarse fácilmente al servidor back-end y realizar la mensajería. En caso afirmativo, ¿qué bibliotecas puedo utilizar para iOS y Android?
En la página de SockJS GitHub también se enumeran las bibliotecas de clientes disponibles, pero no iOS ni Android. Por lo tanto, me pregunto si SockJS es incluso vale la pena usar sólo por eso.
- Manejo del tiempo de espera con AndroidAnnotations (Spring Rest)
- HTTP Status 403 - No válido CSRF Token 'null' se encontró en el parámetro de solicitud
- Marco ligero de inyección de dependencia para Android
- Integra la aplicación con el sitio web social de primavera
- Android y la elección del marco IOS backend?
He encontrado que para el cliente de iOS Primus-Objc ( GitHub página ) la biblioteca alegando que pueden conectarse a native WebSockets, Socket.IO, SockJS or perhaps engine.io.
Es que una declaración verdadera? Y si eso es cierto, ¿qué pasa con la calidad de esa biblioteca?
Y el evento si está bien usar SockJS en la parte posterior, entonces también sería posible mostrar un código de ejemplo para iOS y Android para que pueda realizar una prueba de concepto en dispositivos móviles?
Si SockJS no es una buena opción para mí, entonces sería mejor que construir mi aplicación de mensajería con Socket.io + Node.js (usando JavaScript). Socket.io me parece que todas las bibliotecas de cliente necesarias para iOS ( biblioteca oficial de Socket.IO chicos ) y Android ( biblioteca oficial de Socket.IO chicos ).
Otra opción puede ser utilizar la biblioteca Netty-Socket.io y construir cada punto final manualmente sin ninguna ayuda de Spring Framework (que estoy considerando utilizar) pero hay un pequeño desafío que tendré que abordar, que es la seguridad. Alguien en realidad ya intentó hacerlo ( el mismo autor hizo la pregunta en la página oficial de Netty-Socket.IO Github ), pero parece que no tuvo suerte en solucionarlo todavía.
- ¿Hay algún marco de aplicación de Android como primavera?
- Agregar acceso de inicio de sesión social a las aplicaciones nativas mediante oauth de seguridad de primavera
- HttpUrlConnection de Android: Publicar Multipart
- Grails 2.4 Spring Websocket SockJs Java Android Cliente
- Android Spring RestTemplate con proxy
- Cómo cambiar el tipo de contenido de MappingJacksonHttpMessageConverter de application / json; charset = UTF-8 a application / json
- Añadiendo primavera para la dependencia de Android a gradle + proyecto de estudio Android
- Oauth 2.0 Android uso Primavera-Para-Android
Tal vez hace más de un año desde que se hizo la pregunta. Pero, porque está consiguiendo en los primeros resultados cuando Google para SockJS + Android. Por lo tanto, estoy publicando mi respuesta.
De mi experiencia con un proyecto reciente en el que trabajé, pudimos utilizar un cliente STOMP, como el que está aquí , para conectarnos al backend Spring Websocket de la aplicación nativa de Android.
Y desde el navegador, todavía se puede usar el cliente SockJS para obtener compatibilidad entre navegadores a websockets con fallback.
Una nota para mencionar que al usar sólo el cliente STOMP para conectarse a websocket nativo, la URL será algo como ws: // mydomain / SockJSEndpoint / websocket , y al usar el cliente SockJS desde el navegador, la URL será como http : // mydomain / SockJSEndpoint.
A continuación encontrará referencias útiles relacionadas con su requisito para iOS y Android
SockJS puede ser interesante porque proporciona transporte no-ws. El uso de WebSockets puede no ser posible en todas las situaciones.
Hay un cliente de SockJs multiplataforma del proyecto OpenFL :
https://github.com/jeremyfa/openfl-sockjs
No probado lo bien que funciona, pero al menos para Android está utilizando JavaScript desde dentro de WebView, por lo que no debe ser diferente a JavaScript. Una vez más, no está claro qué tan fuerte está acoplado con OpenFL, pero el enfoque de usar WebView y el cliente SockJS de acciones podría probablemente ser reutilizado.
- Después de la actualización de Android Studio 2.2 / gradle plugin 2.2.0: "no se puede obtener propiedad desconocida 'assembleRelease'"
- Actualización del esquema greenDao