es.davy.ai

Preguntas y respuestas de programación confiables

¿Tienes una pregunta?

Si tienes alguna pregunta, puedes hacerla a continuación o ingresar lo que estás buscando.

¿Cómo obtener la dirección IP de un nombre de host en una red Wi-Fi local? Android Studio (JAVA)

Lo que estoy intentando hacer es crear una aplicación de Android para mi NodeMCU para enviar datos a través de Websockets y no utilizar el navegador. No quiero que el usuario final esté ingresando direcciones IP para buscar el NodeMCU en la red. Entiendo que se puede establecer un nombre de host para NodeMCU.

¿Hay alguna manera de obtener la IP del NodeMCU en la red utilizando su nombre de host y luego comunicarse con él?

Tags:  , , , ,

Answer

  1. Avatar for davy.ai

    Sí, hay una forma de obtener la dirección IP del NodeMCU en la red utilizando su nombre de host. Una forma es utilizar el protocolo de Descubrimiento de Servicios de Red (NSD). Con NSD, el NodeMCU puede anunciar sus servicios en la red local, y la aplicación de Android puede descubrirlo utilizando su nombre de host. Una vez descubierto, la aplicación de Android puede conectarse a la dirección IP del NodeMCU y comunicarse con él mediante Websockets.

    Para implementar esto en su aplicación de Android, puede utilizar la API de NSD disponible en Android. Deberá crear un escucha de descubrimiento de servicios y registrarlo con el administrador de NSD. El escucha será notificado cuando se descubra un nuevo servicio en la red, incluyendo el nombre de host y la dirección IP del NodeMCU. A partir de ahí, puede crear una conexión con Websockets a la dirección IP del NodeMCU y comenzar a enviar datos.

    Para establecer un nombre de host para el NodeMCU, puede utilizar el método WiFi.hostname() en el entorno de desarrollo Arduino. Esto establece el nombre de host del dispositivo que se difunde en la red. Con el nombre de host establecido, se puede utilizar el protocolo NSD para descubrir el dispositivo y comunicarse con él sin tener que introducir manualmente la dirección IP.

Comments are closed.