System.Beacon.Components.TCustomBeacon.OnParseManufacturerData

Aus RAD Studio API Documentation
Wechseln zu: Navigation, Suche

Delphi

property OnParseManufacturerData: TParseManufacturerDataEvent read FOnParseManufacturerData write FOnParseManufacturerData;

C++

__property System::Beacon::TParseManufacturerDataEvent OnParseManufacturerData = {read=FOnParseManufacturerData, write=FOnParseManufacturerData};

Eigenschaften

Typ Sichtbarkeit Quelle Unit Übergeordnet
event public
System.Beacon.Components.pas
System.Beacon.Components.hpp
System.Beacon.Components TCustomBeacon


Beschreibung

Wird ausgelöst, wenn der Bluetooth Low Energy-Manager ein Gerät ermittelt und ermöglicht die Analyse der herstellerspezifischen Daten in den Bekanntgabedaten des ermittelten Geräts.

Bluetooth Low Energy-Geräte können sich selbst bekanntgeben, sodass andere Bluetooth Low Energy-Geräte wie Ihres diese Geräte ermitteln können. Beacons sind Bluetooth Low Energy-Geräte, die in ihren Bekanntgabedaten herstellerspezifische Daten enthalten, anhand derer Sie die Entfernung zwischen dem Beacon und Ihrem Bluetooth Low Energy-Gerät ermitteln können.

Das Format dieser herstellerspezifischen Daten entspricht normalerweise einem der beiden weit verbreiteten Standards, iBeacon oder AltBeacon. Die Beacon-Komponente unterstützt diese Standards und kann alle herstellerspezifischen Daten, die einem dieser Standards entsprechen, erfolgreich analysieren, sofern Sie zuvor den richtigen zu verwendenden Standard konfiguriert haben.

Es könnten jedoch auch Beacons vorhanden sein, die keinem dieser Standards entsprechen und ihre Daten in einem eigenen Format bereitstellen. Falls das bei Ihren Beacons der Fall ist, können Sie eine Ereignisbehandlungsroutine für OnParseManufacturerData implementieren, die die eingehenden herstellerspezifischen Daten analysiert und einen Beacon-Informations-Record füllt.

Die Ereignisbehandlungsroutine von OnParseManufacturerData erhält die folgenden Parameter:

  • Sender ist Ihre Beacon-Komponente.
  • AData sind die herstellerspezifischen Daten aus den Bekanntgabedaten eines ermittelten Bluetooth Low Energy-Geräts. AData_High ist die Byte-Anzahl in AData.
  • BeaconInfo ist eine Instanz von TBeaconInfo, die Sie mit den Daten aus AData füllen müssen.
  • Handled stellt fest, ob Ihre Ereignisbehandlungsroutine die Eingabedaten erfolgreich analysiert und BeaconInfo mit den erforderlichen Informationen gefüllt hat (True) oder ob Ihre Ereignisbehandlungsroutine erwartet, dass der Standard-Parser der Beacon-Komponente die Eingabedaten analysiert (False). Handled ist standardmäßig False. Denken Sie daran, diesen Wert nach der erfolgreichen Analyse der Eingabedaten auf True zu setzen.

Überprüfen Sie als Ausgangspunkt für Ihre Ereignisbehandlungsroutine die Implementierung der vorhandenen Parser-Funktionen für die unterstützten Standards. Siehe TStandardBeaconParser.Parse und TAlternativeBeaconParser.Parse in der plattformspezifischen Unit System.Beacon.Common.pas, die die Beacon-API für andere Plattformen als iOS implementiert. Diese Unit befindet sich im Ordner C:\Program Files (x86)\Embarcadero\Studio\22.0\source\rtl\net.

Siehe auch