corebluetooth Lesen des RSSI-Fehlers: Der Vorgang wurde abgebrochen

8

Ich entwickle eine App mit Corebluetooth Framework,

und stellen Sie eine Verbindung zu einem BLE-Gerät her, um den RSSI-Wert zu erhalten.

Ich habe eine Funktion eingestellt, um RSSI periodisch zu lesen, der Timer-Code ist unter

%Vor%

und der detectRSSI-Code liegt unter

%Vor%

Die Frage ist also,

die Funktion funktioniert gut, aber wenn ich Zeitintervall weniger als 1,2 Sekunden einstellen,

Die peripheralDidUpdaterRSSI wird eine Fehlermeldung wie folgt zufällig ausgeben:

%Vor%

Und es wäre nicht passiert, wenn die Rate mehr als 1,2 Sekunden ist.

Hat jemand eine Idee, den RSSI-Wert häufiger zu lesen (0,5 Sekunden oder weniger)?

    
momoyo 21.03.2013, 05:59
quelle

1 Antwort

0

Ich stoße auch auf das gleiche Problem. Für mich funktioniert es, wenn ich einfach sleep(2) in peripheralDidUpdateRSSI hinzufüge. Vergessen Sie nicht, bei der Initialisierung von CBCentralManager die Hintergrundwarteschlange zu verwenden.

%Vor%     
schystz 21.02.2014 13:54
quelle