-
- All Implemented Interfaces:
-
org.altbeacon.beacon.InternalBeaconConsumer
@Deprecated() public interface BeaconConsumer implements InternalBeaconConsumer
An interface for an Android
ActivityorServicethat wants to interact with beacons. The interface is used in conjunction withBeaconManagerand provides a callback when theBeaconServiceis ready to use. Until this callback is made, ranging and monitoring of beacons is not possible. In the example below, an Activity implements theBeaconConsumerinterface, binds to the service, then when it gets the callback saying the service is ready, it starts ranging.public class RangingActivity extends Activity implements BeaconConsumer { protected static final String TAG = "RangingActivity"; private BeaconManager beaconManager = BeaconManager.getInstanceForApplication(this);{@literal @}Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_ranging); beaconManager.bind(this); }{@literal @}Override protected void onDestroy() { super.onDestroy(); beaconManager.unbind(this); }{@literal @}Override public void onBeaconServiceConnect() { beaconManager.setRangeNotifier(new RangeNotifier() {{@literal @}Override public void didRangeBeaconsInRegion(Collectionbeacons, Region region) { if (beacons.size() > 0) { Log.i(TAG, "The first beacon I see is about "+beacons.iterator().next().getDistance()+" meters away."); } } }); try { beaconManager.startRangingBeaconsInRegion(new Region("myRangingUniqueId", null, null, null)); } catch (RemoteException e) { e.printStackTrace(); } } }