Le specifiche Bluetooth a bassa energia non dicono molto se le periferiche possono collegarsi a più di un centrale alla volta, ma il mio test di esperienza mi dice che non possono.Scansione continua per iOS CentralBluetooth Central Manager?
Poiché la mia applicazione richiede una relazione non possessiva con le periferiche (ovvero nessuna connessione, che bloccherebbe altre) e ha bisogno di aggiornare costantemente i valori RSSI, sto cercando un modo per scansionare continuamente le periferiche e acquisire i loro valori RSSI .
Il metodo scanForPeripheralsWithServices sembra eseguire la scansione per un determinato intervallo e quindi si interrompe. Credo che la mia migliore scommessa sia quella di scansionare per 3 secondi alla volta, fermare Scan, attendere (alcuni secondi) e quindi riavviare una scansione. Ripetere.
Qualcuno può indicare un modo migliore di farlo? Ad esempio, configurando una periferica per connettersi a più di una Centrale?
Sì, ma ho bisogno di ottenere costantemente una versione aggiornata RSSI. Le mie scoperte sono che una volta che Central Manager ha scoperto e riscoperto una periferica alcune volte, quindi smette di scoprirlo (sembra essere di circa 3 secondi) anche quando la scansione continua. Quello che mi rimane è che è necessario riavviare ripetutamente la scansione per cercare di ottenere i valori aggiornati di RSSI. – Jonathan
Sì, è possibile riavviare la scansione all'interno della funzione didDiscoverPeripheral, e con ciò otterrete rapidamente l'RSSI per sempre. – Aboelseoud
Grazie. Che funzioni. Al fine di risparmiare energia, in realtà smetto di scansionare dopo 100ms e poi faccio un burst di 100ms ogni secondo circa. Funziona alla grande. – Jonathan