Ho un'app in cui sono in grado di controllare in modo programmatico l'associazione e l'annullamento dell'accoppiamento Bluetooth. Posso accoppiare prima della connessione e poi disassociarmi. Il motivo per cui ho bisogno di farlo è specifico per la mia applicazione e non nell'ambito della mia domanda.Come posso evitare o ignorare la notifica di abbinamento Bluetooth di Android quando eseguo l'associazione programmatica?
Fondamentalmente quello che sto facendo è:
- ottenere un riferimento
ib
aIBluetooth
oggetto come descritto nel this answer - Registrare un BroadcastReceiver per
android.bluetooth.device.action.PAIRING_REQUEST
- chiamata
ib.createBond(address)
- Attendere BroadcastReceiver per innescare
- Converti pin utente in byte con convertPinToBytes()
- chiamata
ib.setPin(address, pinBytes)
dall'interno BroadcastReceiver
In ogni modo, questo approccio funziona bene, tranne per il fatto che quando faccio l'accoppiamento, ricevo una notifica nella barra di stato chiedendo che all'utente di inserire un codice PIN per completare la accoppiamento. Ma questo non è necessario, perché quando l'utente lo vede, la mia app ha già utilizzato setPin()
. Mi piacerebbe davvero che la notifica a) non appaia affatto, o b) venga automaticamente ignorata in qualche modo.
Mi rendo conto che questo potrebbe non essere possibile, ma ho pensato di chiedere se qualcuno ha un'idea creativa.
Puoi aggiungere un po 'di codice di esempio (o un link al tuo codice sorgente). Quello che voglio fare è in realtà lo stesso di te. Voglio connettermi a un dispositivo senza la richiesta della password. Cordiali saluti, Jeroen – Jeroen
Purtroppo non posso condividere il mio codice sorgente, ma il passo passo che ho sopra è molto vicino al codice reale. Puoi iniziare con il codice sorgente nella risposta a cui faccio il link al passaggio 1. –
@JoelF hai risolto il problema? Perché non lo sono. Apprezzo davvero se puoi condividere come risolvi, se è così. – Tiago