Ejemplo de uso de socket para comunicación entre Android y Linux
Hola amigos, hoy os traido un ejemplo sobre socket. Se trata de pasar los datos del acerelometro del móvil a un programa de pc, y mostrar una gráfica en la pantalla del ordenador.
Todo realizado son softwarelibre
Para realizarlo he usado los siguientes lenguajes de programación:
Para Android: Basic! (para saber más visita este enlace)
y
Para gnu/linux: Gambas3.
Los dispositivos estan conectado a la misma red por wifi, usando una LAN.
El ejemplo consiste en dos aplicaciones:
1) La de Android:
Se encarga de conectar como cliente, y enviar los datos que lee del sensor de aceleración.
2) La de Gambas:
Funciona como servidor, y muestra los datos que le envía el móvil del acelerómetro mediante una gráfica.
Aqui teneis un pequeño video donde muestro su funcionamiento:
Os dejo el código fuente de las dos aplicaciones:
Manual de uso, pasos a realizar:
1º Teneis que correr el programa servidor, osea, el de gambas3, y pulsar el botón "Escuchar"
Asi podeis ver vuestra ip en la red LAN.
nota: si no sale, con el comando ifconfig, en la terminal, averiguar cual es vuestra ip.
El puerto para la comunicación que he elegido es el 1080, pero podeis cambiarlo al que numero que deseeis y que este libre (no la esta usando otro servicio).
2º Correr la aplicación en el movil (mandos.bas)
Nota: cuando la descargues moverla desde la carpeta de descarga, al directorio /rfo-basic/source.
3º Arrancais el program Basic de android:
(para saber mas sobre este programa: enlace )
Cargais al Basic de Android (boton menu/load), el programa mandos.bas, y la ejecutais (boton menu/Run)
Os pide el ip de conexión del servidor (en mi caso es 192.168.1.101), y el numero de puerto (en mi caso el 1080)
Mostrará en pantalla:
Conectando...
1: Cliente conectado
y empieza a enviar datos al programa de gnu/linux.
4º Muestra de datos:
En fin, esto es un ejemplo, seguro que se pueden hacer muchas cosas más !!!
Saludos