Red de conocimiento informático - Material del sitio web - Cómo desarrollar usando Android Bluetooth

Cómo desarrollar usando Android Bluetooth

La plataforma Android admite la pila de protocolos de red Bluetooth para realizar la transmisión inalámbrica de datos entre dispositivos Bluetooth. Este documento describe cómo utilizar la API de Bluetooth proporcionada por la plataforma Android para implementar la comunicación entre dispositivos bluetooth. Bluetooth tiene dos funciones de conexión: punto a punto y multipunto.

Usando la API de Bluetooth, puedes hacer:

* Buscar dispositivos Bluetooth

* Consultar dispositivos emparejados desde el adaptador Bluetooth local

* Establecer canal RFCOMM

* Conectarse a otros dispositivos a través del descubrimiento de servicios

* Transferir datos entre dispositivos

* Administrar múltiples conexiones

Conocimientos básicos

Este documento presenta cómo usar la API Bluetooth de Android para completar las cuatro tareas principales necesarias. El uso de Bluetooth para la comunicación del dispositivo incluye principalmente cuatro partes: configuración de Bluetooth, búsqueda de dispositivos (emparejados o visibles), conexión. transferir datos.

Todas las API de Bluetooth están en el paquete android.bluetooth. La implementación de estas funciones requiere principalmente las siguientes clases e interfaces:

BluetoothAdapter

Representa el adaptador Bluetooth local (transmisor Bluetooth) y es la entrada a todas las interacciones Bluetooth. Puede buscar otros dispositivos Bluetooth, consultar la lista de dispositivos emparejados, crear un dispositivo Bluetooth con una dirección MAC conocida y crear un BluetoothServerSocket para monitorear las comunicaciones de otros dispositivos.

Dispositivo Bluetooth

Representa un dispositivo Bluetooth remoto. Úselo para solicitar que un dispositivo Bluetooth remoto se conecte u obtenga el nombre, la dirección, el tipo y el estado de vinculación del dispositivo Bluetooth remoto. (La información está encapsulada en bluetoothsocket).

BluetoothSocket

Representa una interfaz de conector Bluetooth (similar al conector en tcp). Las aplicaciones la utilizan para comunicarse con otros dispositivos Bluetooth a través de flujos de entrada y salida.

BluetoothServerSocket

Representa abrir una conexión de servicio para monitorear posibles solicitudes de conexión entrantes (pertenecientes al lado del servidor). Para conectar dos dispositivos Bluetooth, un dispositivo debe actuar como servidor y el otro. abrir una toma de servicio. Cuando el dispositivo remoto inicia una solicitud de conexión y está conectado, la clase Blueboothservversocket devolverá un bluetoothsocket.

BluetoothClass

Describe las características (perfil) de un dispositivo o aproximadamente qué servicios (servicios) Bluetooth en el dispositivo puede proporcionar, pero no es confiable. Por ejemplo, el dispositivo es un teléfono, computadora o dispositivo portátil; el dispositivo puede proporcionar servicios de audio/telefonía, etc. Puede usarlo para proporcionar algunas indicaciones de la interfaz de usuario.

BluetoothProfile

BluetoothHeadset

Proporciona soporte para el uso de auriculares Bluetooth en teléfonos móviles. Esto incluye los modos de auriculares Bluetooth y manos libres (V1.5).

BluetoothA2dp

Define audio de alta calidad que se puede transmitir de un dispositivo a otra conexión Bluetooth. "A2DP" significa Modo de distribución de audio avanzado.

BluetoothHealth

Representa el servicio Bluetooth controlado por el agente de configuración del dispositivo médico.

BluetoothHealthCallback

Una clase abstracta que implementa la devolución de llamada de BluetoothHealth.

Debe ampliar esta clase e implementar métodos de devolución de llamada para recibir actualizaciones del estado de registro de la aplicación y cambios en el estado del canal Bluetooth.

BluetoothHealthAppConfiguration

Representa la configuración de una aplicación, una aplicación médica Bluetooth de terceros registrada para comunicarse con dispositivos médicos Bluetooth remotos.

BluetoothProfile.ServiceListener

Notifica a los clientes de BluetoothProfile IPX cuando se han conectado o desconectado del servicio.

Permisos de Bluetooth

Para utilizar la función Bluetooth en su aplicación, se deben declarar al menos dos permisos en AndroidManifest.xml: BLUETOOTH (cualquier API relacionada con Bluetooth debe usar este permiso ) y BLUETOOTH_ADMIN (búsqueda de dispositivos, configuración de Bluetooth, etc.).

Para poder realizar comunicaciones Bluetooth, como solicitudes de conexión, recibir conexiones y transmitir datos, debe tener permisos BLUETOOTH.

Se debe requerir el permiso BLUETOOTH_ADMIN para iniciar el descubrimiento de dispositivos o manipular la configuración de Bluetooth. La mayoría de las aplicaciones requieren este permiso para poder descubrir dispositivos Bluetooth locales. Otras capacidades otorgadas por este permiso no deben usarse a menos que la aplicación sea un "administrador de energía" que modificará la configuración de Bluetooth según los requisitos del usuario.

Nota: para solicitar BLUETOOTH_ADMIN, primero debe estar presente BLUETOOTH.

Declara los permisos de Bluetooth en el archivo de manifiesto de tu aplicación. Por ejemplo:

lt; manifiesto... gt;

lt; usa-permiso android: nombre="android.permission.BLUETOOTH"

...

lt;/manifestgt;

Obtenga más información viendo el perfil

Configuración de Bluetooth

Antes de que su aplicación pueda comunicarse a través de Bluetooth, debe confirmar si el dispositivo es compatible con Bluetooth y, de ser así, asegurarse de que esté encendido.

Si no es compatible, no se podrá utilizar la función Bluetooth. Si Bluetooth es compatible pero no está disponible, sólo tienes que solicitar Bluetooth en tu aplicación. Esto debe hacerse en dos pasos, utilizando BluetoothAdapter.