0.2.0
Changes
RSSI Filters
You can now use classes implementing RssiFilter
to reduce the signal fluctuation. Using filters leads to more stable results and thus more accurate indoor positioning. This release already includes a MeanFilter
, a KalmanFilter
and an ArmaFilter
. Convenience methods in the Beacon
class have been adjusted accordingly.
// get the average RSSI from the past 5 seconds
MeanFilter meanFilter = new MeanFilter(5, TimeUnit.SECONDS);
float meanRssi = beacon.getRssi(meanFilter);
Beacon Factory
In addition to the already included Eddystone
and IBeacon
classes, you can now define your own custom Beacon
classes. To make sure that the BeaconManager
still operates nicely, it now holds a BeaconFactory
. You can add you own classes to that factory.
Check out the BeaconFactoryTest
to see an example implementation.
Advertising Packet Factory
For the same reason, the BeaconManager
now also holds an AdvertisingPacketFactoryManager
, which you can extend with your own AdvertisingPacketFactory
. These factories will be used to create AdvertisingPacket
instances from the raw advertising data byte arrays (e.g. when you call BeaconManager.processAdvertisingData(...)
).
Check out the AdvertisingPacketFactoryManagerTest
to see an example implementation.