Cómo evitar el almacenamiento en caché de nombres y detectar cambios de nombre de bluetooth en el descubrimiento

Estoy escribiendo una aplicación para Android que recibe información de un dispositivo Bluetooth. Nuestro cliente ha sugerido que el dispositivo Bluetooth (que producen) cambiará su nombre dependiendo de ciertas condiciones; para el ejemplo más simple, a veces su nombre será "xxx-ON" y otras veces "xxx-OFF". Se supone que mi aplicación solo busca este transmisor BT (uso BluetoothAdapter.startDiscovery ()) y hago diferentes cosas según el nombre que encuentre. NO estoy sincronizando con el dispositivo Bluetooth (aunque supongo que podría ser posible, se supone que la aplicación eventualmente funcionará con múltiples dispositivos Android y múltiples transmisores BT, así que no estoy seguro de que sea una buena idea).

Mi código funciona bien para detectar dispositivos BT y encontrar sus nombres. Además, si el dispositivo se apaga, puedo detectar la próxima vez que busque, que no está allí. Pero parece que si está allí y cambia de nombre, recojo el nombre antiguo, probablemente está guardado en algún lugar. Incluso si el dispositivo bluetooth se apaga, y notamos que, la próxima vez que lo detecte, todavía veo el nombre antiguo.

Encontré este problema en Google Code:aquí pero no me quedó claro ni siquiera cómo usar la solución dada ("intentar conectar"). ¿Alguien ha hecho esto y ha tenido suerte? ¿Puedes compartir código?

¿Hay una forma sencilla de eliminar simplemente los nombres en caché y volver a buscar para que siempre encuentre los nombres más nuevos? Incluso una forma no simple sería buena (estoy escribiendo para un dispositivo rooteado).

Gracias

Respuestas a la pregunta(1)

Su respuesta a la pregunta