Desarrollo de Bluetooth para Android (1)
Documentación oficial para dispositivos Bluetooth comunes
La plataforma Android incluye soporte de pila de red Bluetooth, que permite a los dispositivos intercambiar datos de forma inalámbrica con otros dispositivos Bluetooth. El marco de la aplicación proporciona acceso a la funcionalidad Bluetooth a través de la API Bluetooth de Android. Usando la API de Bluetooth, las aplicaciones de Android pueden realizar las siguientes operaciones:
El Bluetooth clásico es adecuado para operaciones que consumen mucha batería, como transmisión y comunicación entre dispositivos Android. Para dispositivos Bluetooth con requisitos de bajo consumo, se introdujo compatibilidad API para Bluetooth Low Energy en Android 4.3 (API 18).
Utilice la API de Bluetooth de Android para realizar las cuatro tareas principales de la comunicación mediante Bluetooth: configurar Bluetooth, buscar dispositivos emparejados o disponibles en un área local, conectar dispositivos y transferir datos entre dispositivos.
Acerca de la API de Bluetooth en el paquete android.bluetooth, la siguiente es una introducción a las clases principales relacionadas con Bluetooth:
Conéctese al servicio en el cliente IPC BluetoothProfile (es decir , ejecutar un archivo de configuración específico del servicio interno) o la interfaz a la que se envían notificaciones cuando se desconecta el servicio.
Para utilizar Bluetooth, debe declarar el permiso BLUETOOTH para realizar la comunicación Bluetooth.
1. Obtenga el adaptador Bluetooth
Por ejemplo: podemos consultar todos los dispositivos emparejados y luego usar ArrayAdapter para mostrar el nombre de cada dispositivo al usuario:
Para iniciar una conexión, solo necesita conocer la dirección Mac del dispositivo Bluetooth de destino.
NOTA Realizar el descubrimiento es un proceso muy pesado para un adaptador Bluetooth y consume muchos recursos. Después de encontrar el dispositivo al que conectarse, asegúrese de usar cancelDiscovery() para detener el descubrimiento y luego intentar conectarse. Si ya está conectado a un dispositivo, realizar una operación de descubrimiento en este momento reducirá en gran medida el ancho de banda disponible de esta conexión. Por lo tanto, ¡el descubrimiento no debe realizarse mientras esté conectado!
Por ejemplo:
Si los dos dispositivos no están emparejados antes de conectarse, el sistema emitirá automáticamente una solicitud de emparejamiento.
El proceso básico de aceptación de la conexión por parte del socket del servidor
se ejecuta en un subproceso secundario.
Ejemplo:
Proceso básico de conexión del cliente
Al llamar a connect(), asegúrese de que el cliente no realice una operación de descubrimiento. Si se ejecuta, reducirá significativamente la velocidad de la conexión y aumentará la posibilidad de falla.
Ejemplo
Llamar a cancelleDiscovery() antes de conectarse Este método siempre debe llamarse antes de realizar una conexión y se llama sin verificar si el escaneo está en progreso.
Procedimiento:
A partir de Android 3.0, la API de Bluetooth admite el uso de perfiles Bluetooth. Un perfil Bluetooth es una especificación de interfaz inalámbrica adecuada para la comunicación Bluetooth entre dispositivos.
1. Un perfil Bluetooth es una especificación para la comunicación entre dispositivos (Dispositivos Bluetooth)
El perfil manos libres es un ejemplo para un teléfono móvil conectado a unos auriculares inalámbricos, dos. Los dispositivos deben admitir perfiles de manos libres. También podemos escribir nuestras propias clases para admitir perfiles Bluetooth específicos implementando la interfaz BluetoothProfile.
La API de Android proporciona las siguientes implementaciones de archivos de configuración de Bluetooth:
2. Pasos básicos para usar archivos de configuración
Creación de aplicaciones HDP:
Acerca de la comunicación de conexión Bluetooth ordinaria entre dispositivos y dispositivos Bluetooth comunes
Acerca de dispositivos Bluetooth e instrumentos Bluetooth (auriculares Bluetooth, balanzas electrónicas y otros productos similares)
Este tipo de comunicación se implementa a través del proxy de archivo de configuración.
Hay una clase de proxy de archivo de configuración correspondiente. Las operaciones específicas se completan a través de este objeto.
Referencia: /s?__biz=MzU5NzA2NjQzMg==&mid=2247484128&idx=1&sn=9d59b9ad66fb68b9569c29566103c009&scene=21#wechat_redirect