2016-07-14 7 views
1

Wir entwickeln eine App, die im Hintergrund nach Beacons scannen muss. Dies erfordert, dass iOS beim Scannen eine Dienst-UUID angibt. Siehe Apple documentation:So senden Sie Service-UUID

Apps, die den Bluetooth-zentralen Hintergrundmodus angegeben haben, dürfen im Hintergrund scannen. Sie müssen jedoch explizit nach einem oder mehreren Services suchen, indem Sie sie im Parameter serviceUUIDs angeben. Die Scanoption CBCentralManagerOptionShowPowerAlertKey wird beim Scannen im Hintergrund ignoriert.

Wir verwenden ein Raspberry Pi mit einem Bluetooth-Adapter, um ein Beacon-Signal zu senden (entsprechend der AltBeacon-Spezifikation). Leider können wir nicht herausfinden, wie die Service UUID in der BLE Advertising PDU eingestellt werden soll, ob es Teil der Bluetooth Spezifikation oder Teil der herstellerspezifischen Datenstruktur ist. Wir haben Beispiele für die Einstellung der Dienst-UUID gefunden, wenn Sie ein iOS-Gerät als Beacon verwenden, aber da wir einen generischen Bluetooth-Adapter verwenden, können wir diesen nicht verwenden. Könnte uns jemand erklären, wie und wo die Service-UUID in der Beacon-Übertragung eingestellt werden sollte?

+0

Meinst du, wo die UUID im iBeacon-Frame-Format ist oder wie man eine UUID auswählt? – Paulw11

+0

Ich meinte, wo die UUID in das iBeacon oder (vorzugsweise) AltBeacon-Format gebracht werden soll, ich habe die Frage aktualisiert, um das klarer zu machen. – Hugo

+0

Der erste Treffer bei Google für "altbeacon format" - https://github.com/AltBeacon/spec. iOS kann jedoch altBeacon nicht im Hintergrund erkennen, daher müssen Sie das iBeacon-Format für das – Paulw11

Antwort

0

ist es ein Teil der Bluetooth-Spezifikation oder einen Teil der spezifischen Datenstruktur Hersteller?

die später.

Im Allgemeinen, wenn Sie die Werbeparameter einstellen, können Sie die UUID (oder Name, TX Power, etc) darauf einstellen.

+0

Könnten Sie vielleicht einen Link hinzufügen, wo dies angegeben ist? Oder eine andere Informationsquelle, wie diese Service-UUID gesendet wird (oder sollte)? – Hugo

+0

SIG definiert die Standard-UUID https://www.bluetooth.com/specifications/gatt/services und wenn Sie Ihre private UUID verwenden (ich meine, Sie können nicht auf der SIG-Website gefunden werden), können Sie sich einfach selbst machen; Folge nur dem Format. –