#VS2015 – Enumerando BlueTooth LE Devices en #Android con #Xamarin

Hola!

Hoy voy a comenzar con una serie de posts sobre cómo trabajar con Xamarin y dispositivos BlueTooth LE. Ya he escrito un par de posts sobre cómo trabajar con Windows 10 Universal Apps y BlueTooth LE, en esos ejemplos lo que hacía era conectarme a un sensor de latidos del corazón y mostrar el valor del mismo en una App. El ejemplo de hoy es más simple: mostrar todos los BLE Devices que puede detectar un Android .

Lo primero que haremos es crear una app de Xamarin para Android.

Nota: Si no conoces Xamarin, en la sección de referencias he dejado un link con recursos para comenzar a trabajar con Android.

El siguiente paso es agregar dentro de la vista principal un botón y un texto multilínea. La app es más que simple, al presionar el botón, se listarán los Devices BLE encontrados.

El siguiente paso es identificar el botón y la caja de texto. Además de crear una nueva instancia de BlueToothLeScanner para listar los dispositivos BlueTooth Low Energy y suscribirse a los eventos ScanTimeOutElapsed() y DeviceDiscovered().

Importante: Por lo que he visto, hay 2 modos de trabajar con BlueTooth Devices. Para los dispositivos normales, hay que utilizar la clase Adapter, que se obtiene desde el servicio de sistema de BlueTooth, líneas 30 a 32. En el caso de BlueTooth LE, este no es un servicio de sistema, simplemente tenemos que crear una nueva instancia de BlueToothLeScanner, y trabajar con este objeto, líneas 34 a 36.

Luego en el evento DeviceDiscovered() mostraremos el nuevo device en la caja de texto, línea 45 a 29.

Lo mismo haremos cuando el proceso de scan de error, líneas 39 a 43.

Finalmente, en el clic del botón iniciaremos el proceso de búsqueda de Devices BLE.

El resultado de la app en funcionamiento es el siguiente

No tengo en claro por qué me retorna muchas veces el mismo device. Aunque eso no es problema, tengo un par de noches para sacarlo adelante.

Puedes descargar el código desde aquí, https://github.com/elbruno/Blog/tree/master/Xamarin/AndroidApp4

Saludos @ Barcelona

/El Bruno

References

– El Bruno, posts on BlueTooth LE https://elbruno.com/category/BLE/

– Polar Heart Rate Sensor H7, http://www.polar.com/us-en/products/accessories/H7_heart_rate_sensor

– Xamarin, Hello Android http://developer.xamarin.com/guides/android/getting_started/hello,android/

– Xamarin Android.Bluetooth.LE.BluetoothLeScanner http://developer.xamarin.com/api/type/Android.Bluetooth.LE.BluetoothLeScanner/

[Tags Visual Studio 2015, Xamarin, Bluetooth, BLE, Android]

Advertisements

2 thoughts on “#VS2015 – Enumerando BlueTooth LE Devices en #Android con #Xamarin

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out / Change )

Twitter picture

You are commenting using your Twitter account. Log Out / Change )

Facebook photo

You are commenting using your Facebook account. Log Out / Change )

Google+ photo

You are commenting using your Google+ account. Log Out / Change )

Connecting to %s