configurer android beacon library pour détecter les paquets EddystoneDetect Eddystone-GGP bibliothèque de balise android
beaconManager = BeaconManager.getInstanceForApplication(context);
// Detect the main identifier (UID) frame:
beaconManager.getBeaconParsers().add(new BeaconParser().
setBeaconLayout("s:0-1=feaa,m:2-2=00,p:3-3:-41,i:4-13,i:14-19"));
// Detect the telemetry (TLM) frame:
beaconManager.getBeaconParsers().add(new BeaconParser().
setBeaconLayout("x,s:0-1=feaa,m:2-2=20,d:3-3,d:4-5,d:6-7,d:8-11,d:12-15"));
// Detect the URL frame:
beaconManager.getBeaconParsers().add(new BeaconParser().
setBeaconLayout("s:0-1=feaa,m:2-2=10,p:3-3:-41,i:4-21v"));
beaconManager.bind(this);
Beacon de ne jamais détecté dans la bibliothèque de balise Android.
@Override
public void onBeaconServiceConnect() {
beaconManager.addMonitorNotifier(this);
beaconManager.addRangeNotifier(new RangeNotifier() {
@Override
public void didRangeBeaconsInRegion(Collection<Beacon> beacons,
Region region) {
if (beacons.size() > 0) {
Extra.log("Beacons detected", "info");
//Process beacons data...
}
}
});
try {
beaconManager.startRangingBeaconsInRegion(new Region(
"myRangingUniqueId", null, null, null));
} catch (RemoteException e) {
}
}
Test:
- Si balise est configuré dans Eddystone-TML je peux détecter les données de télémétrie de balise avec application du fabricant.
- Si la balise est configurée dans Eddystone-TML, je ne peux pas détecter la balise avec la bibliothèque.
- Si la balise est configurée dans Eddystone-UID, je peux détecter correctement la balise avec la bibliothèque et l'application du fabricant.
onBeaconServiceConnect() est appelée une fois au démarrage. didRangeBeaconsInRegion avec beacons.size() == 0 est appelé plusieurs fois même si la balise est désactivée. L'appareil est Android 5.1. – user3782779
Je teste la bibliothèque dans le même appareil avec les balises Eddystone - UID et Albeacon et fonctionne bien. Le problème est seulement dans Eddystone - TLM balise. – user3782779
Voir mon édition, expliquant comment accéder aux données TLM – davidgyoung