¿Cómo se conecta automáticamente el sistema Android al dispositivo emparejado?
Qué quiero saber:
Me pregunto cómo el sistema Android (como el teléfono inteligente Android) se conecta automáticamente a los dispositivos que se emparejan antes.
Por ejemplo, Emparejo mis auriculares bluetooth con mi teléfono inteligente Android en el procedimiento de"turn on scanning/advertising -> click pairing"
el día 1. Y cuando enciendo la publicidad en mi auricular, se conecta automáticamente los días 2, 3, 4, y así sucesivamente. El punto es que no tengo que hacer que mi teléfono inteligente escanee nuevamente para encontrar mis auriculares (emparejados).
No puedo entender cómo el sistema Android encuentra que el dispositivo emparejado está encendido. ¿El sistema Android escanea periódicamente en segundo plano? ¿Incluso si no hago clic en el botón "escanear"?
Por qué pregunto:
Quiero que mi aplicación se conecte automáticamente a un dispositivo BLE personalizado, después de realizar el emparejamiento. Logro hacer emparejamiento (unión) concreateBond()
método, pero después de eso, no pude encontrar cómo hacer una conexión automática. Sé que puedo activar la función de conexión automática de esta manera,connectGatt(XXX, true, XXX)
, pero esta función de conexión automática no funciona cuando el dispositivo BLE se desconecta unos días.
Así que quiero hacer que mi aplicación funcione como el sistema Android y los auriculares Bluetooth. Pero no pude encontrar cómo funciona el sistema bluetooth de Android, incluso cavo códigos AOSP.
Encontré muchas preguntas (aquí yaquí) sobre problemas como el mío, pero no hubo respuestas.
Gracias por adelantado.
Actualizar:
encontre esobt_btif
se activa (con el teléfono inteligente LG y el Nexus 5) cuando se enciende el auricular emparejado (comienza a anunciar). Perobt_btif
no se activa con mi dispositivo BLE personalizado ... ¿Qué puedo hacer?