5

Sto scrivendo un'app che utilizza CoreBluetooth in iOS8 che rileva e si connette ad altri telefoni tramite l'app. Sto cercando di capire il modo migliore per essere in grado di creare una connessione mentre entrambe le app sono in background, ma ho avuto difficoltà nello scenario in cui entrambi i telefoni sono in background + bloccati. Ho seguito i consigli di questo post:iOS CoreBluetooth che opera contemporaneamente come periferica e centrale sullo sfondo

How to detect nearby devices with Bluetooth LE in iOS 7.1 both in background and foreground?

non sono stato in grado di stabilire una connessione quando entrambi i telefoni sono in background + bloccati, ma sono stato in grado di ottenere una connessione in cui la periferica e centrale sono background + bloccato e quindi sblocco il centrale (centrale ancora sullo sfondo). Quando sblocco la periferica non succede nulla. Funziona anche quando sono in background ma non bloccati.

Quindi, per consentire di stabilire una connessione quando sblocco la "periferica", ho deciso di creare una centrale e una periferica su entrambi i telefoni per eseguire contemporaneamente la scansione e la pubblicità. Qualunque sia la prima scoperta, l'altra prima interromperà la scansione/la pubblicità e la connessione. Ho eseguito in problemi con questo metodo che sono dettagliati nei seguenti due domande:

Peripheral and central at the same time on iOS

iOS CoreBluetooth Simultaneous Peripheral and Central Managers

Fondamentalmente, penso che quando entrambi i miei dispositivi tentano di connettersi tra loro contemporaneamente, vengono bloccati nel tentativo di connettersi e non viene mai chiamatoConnectPeripheral su nessuno di essi (l'ultima cosa che entrambi visualizzano è un messaggio che dice che stanno tentando di connettersi). Ha funzionato occasionalmente anche se così sono anche un po 'confuso sul motivo per cui c'è una natura probabilistica per la connessione. Qualcuno ha qualche suggerimento su come affrontare il problema? Se c'è un modo migliore per stabilire una connessione quando entrambe le app sono in background + bloccate, faccelo sapere perché quello era il mio problema originale.

Grazie!

+0

Ciao Steven, hai avuto fortuna nel fare il lavoro centrale e periferico in modalità sfondo? –

risposta

0

Dichiarare bluetooth-central e bluetooth-peripheralbackground modes nel proprio Info.plist per agire in entrambi i ruoli Central e Peripheral in background.

Problemi correlati