Empresas
Empleos
  • Sobre nosotros
  • Soluciones
    • Publicación de vacantes
      Publica tu vacante y recibe candidatos calificados en 48h.
    • Evaluación de candidatos
      500+ pruebas técnicas y psicológicas, más anti-fraude.
    • Headhunting
      Búsqueda ejecutiva a la medida de principio a fin.
    • Nómina + EOR
      Dispersión de nómina y EOR en más de 15 países de LATAM.
  • Precios
  • Empleos

0

152
Vistas
Zócalo tcp sin procesar dentro de la vista web de Android

Introducción

Estoy trabajando en una aplicación de Android que permite a los no programadores programar un robot educativo usando un lenguaje de programación visual (basado en Blockly). Este robot ejecuta una máquina virtual lua y puede configurar su propia red wifi a la que me conectaré desde mi dispositivo Android.

El problema

Necesito enviar el código al robot y debo hacerlo desde la vista web de Android porque es importante que el usuario pueda seguir viendo el programa basado en bloques mientras el robot lo ejecuta y envía comentarios al dispositivo móvil (que resaltará los bloques de código que se ejecutan en tiempo real). Básicamente: necesito enviar y recibir datos desde el interior de una vista web de Android a través de un socket tcp sin formato usando mi propio protocolo de comunicación.

¿Qué he probado?

He estado buscando información sobre cómo solucionar esto. Hasta ahora he aprendido:

  • Javascript simple: solo puede usar websockets que funcionan con el protocolo http y no son compatibles con mi protocolo personalizado.
  • React native: creo que me permitiría resolver esto, ya que está basado en node.js y node.js ofrece bibliotecas que admiten sockets sin procesar. (Desechado porque aparentemente reaccionar nativo no usa webview)
  • Androidjs: es un marco que aparentemente me permitiría usar node.js en mi aplicación de Android, el problema con este marco es que no parece ser muy popular y el github parece estar un poco abandonado, no estoy seguro si debería utilizar este. Otro problema es que no tengo 100% claro si me permite usar paquetes node.js dentro de la vista web de Android.
about 4 years ago · Juan Pablo Isaza
1 Respuestas
Responde la pregunta

0

No encontré una manera de usar sockets tcp sin procesar dentro de la vista web.

Sin embargo, pude solucionar este problema vinculando una interfaz javascript a mi vista web que permite la comunicación entre la vista web y la interfaz (una clase Java), luego en la interfaz implementé el zócalo tcp fácilmente ya que es Java.

Información de la interfaz Javascript: https://developer.android.com/guide/webapps/webview.html#BindingJavaScript

La forma en que solía comunicarme desde Android a la vista web era definir una función javascript en el archivo js que se ejecuta dentro de mi vista web, llamémoslo "myJsFunction()", que se llamará usando el método loadurl() de WebView, así:

 WebView myWebView = ...; myWebView.loadUrl("javascript:myJsFunction()");
about 4 years ago · Juan Pablo Isaza Denunciar
Responde la pregunta
Encuentra empleos remotos

¡Descubre la nueva forma de encontrar empleo!

Top de empleos
Top categorías de empleo
Empresas
Publicar vacante Precios Comercial
Legal
Términos y condiciones Política de privacidad
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Recomiéndame algunas ofertas
Necesito ayuda