System.Beacon.Components.TCustomBeacon.OnParseManufacturerData
Delphi
property OnParseManufacturerData: TParseManufacturerDataEvent read FOnParseManufacturerData write FOnParseManufacturerData;
C++
__property System::Beacon::TParseManufacturerDataEvent OnParseManufacturerData = {read=FOnParseManufacturerData, write=FOnParseManufacturerData};
Propriétés
Type | Visibilité | Source | Unité | Parent |
---|---|---|---|---|
event | public | System.Beacon.Components.pas System.Beacon.Components.hpp |
System.Beacon.Components | TCustomBeacon |
Description
Se produit lorsque le gestionnaire Bluetooth Low Energy détecte un périphérique, et vous permet d'analyser les données spécifiques au fabricant dans les données publicitaires du périphérique détecté.
Les périphériques Bluetooth Low Energy peuvent se publier eux-mêmes afin que d'autres périphériques Bluetooth Low Energy, tels que les vôtres, les détectent. Les beacons sont des périphériques Bluetooth Low Energy qui incluent des données spécifiques au fabricant dans leurs données publicitaires. Elles vous permettent de déterminer la distance entre le beacon et votre périphérique Bluetooth Low Energy.
Le format des données spécifiques au fabricant suit généralement l'un des deux standards très répandus, iBeacon ou AltBeacon. Le composant beacon prend en charge ces standards, et il peut analyser avec succès toute donnée spécifique au fabricant qui suit l'un des deux standards, tant que vous avez préalablement configuré le bon standard à utiliser.
Néanmoins, des beacons ne suivent pas ces standards et fournissent leurs données dans un format propriétaire. Si c'est le cas de vos beacons, vous pouvez implémenter un gestionnaire d'événement pour OnParseManufacturerData qui analyse les données entrantes spécifiques au fabricant et remplit un enregistrement des informations beacon.
Le gestionnaire d'événement de OnParseManufacturerData reçoit les paramètres suivants :
Sender
est votre composant beacon.AData
représente les données spécifiques au fabricant issues des données publicitaires d'un périphérique Bluetooth Low Energy détecté.AData_High
est le nombre d'octets deAData
.BeaconInfo
est une instance de TBeaconInfo que vous devez remplir à partir des données deAData
.Handled
détermine si votre gestionnaire d'événement a analysé correctement les données d'entrée et a rempliBeaconInfo
avec les informations requises (True
), ou si votre gestionnaire d'événement laisse l'analyseur par défaut du composant beacon analyser les données d'entrée (False
).Handled
est défini surFalse
par défaut. Assurez-vous de changer sa valeur parTrue
après l'analyse correcte des données d'entrée.
Comme point de départ pour votre gestionnaire d'événement, vérifiez l'implémentation des fonctions d'analyseur existantes pour les standards pris en charge. Voir TStandardBeaconParser.Parse
et TAlternativeBeaconParser.Parse
sur l'unité System.Beacon.Common.pas spécifique à la plate-forme qui implémente l'API beacon pour les plates-formes autres que iOS. Cette unité se trouve dans le dossier C:\Program Files (x86)\Embarcadero\RAD Studio\\source\rtl\net.