Java源码示例:com.estimote.sdk.Region

示例1
/******** BeaconManager.RangingListener Implementation ********/

    @Override
    public void onBeaconsDiscovered(Region region, List<Beacon> list) {
        Timber.i("Beacons discovered in region %s are %d ", region.getIdentifier(), list.size());
        for (Beacon beacon : list) {
            Timber.i(beacon.toString());
        }
        Beacon nearestBeacon = calculateNearestBeacon(list);
        if (nearestBeacon == null) return;

        Timber.i("Nearest beacon is " + nearestBeacon);
        if (isSameAsTodayLatestEncounter(nearestBeacon)) {
            Timber.i("Skipping encounter. Beacon is same as today's latest successful encounter");
        } else {
            performEncounter(nearestBeacon);
        }
    }
 
示例2
@Override
public void onBeaconsDiscovered(Region region, List<Beacon> list)
{
	dataReceived();

	for (Beacon beacon : list)
	{
		beaconDistances.put(getIdentifier(beacon), calculateDistance(beacon));
	}
}
 
示例3
/******** BeaconManager.MonitoringListener Implementation  ********/

    @Override
    public void onEnteredRegion(Region region, List<Beacon> list) {
        Timber.i("Entered region %s. Starting ranging...", region.getIdentifier());
        mBeaconManager.startRanging(region);
    }
 
示例4
@Override
public void onExitedRegion(Region region) {
    Timber.i("Exited region %s. Stopping ranging...", region.getIdentifier());
    mBeaconManager.stopRanging(region);

    RegisteredBeacon latestEncounterBeacon = getLatestEncounterBeacon();
    if (latestEncounterBeacon != null &&
            latestEncounterBeacon.uuid.equalsIgnoreCase(region.getProximityUUID().toString())) {
        performCheckOutLatestEncounter();
    }
}
 
示例5
@Override
protected void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.activity_main);

    beaconManager = new BeaconManager(this);

    beaconManager.setRangingListener(new BeaconManager.RangingListener() {
        @Override
        public void onBeaconsDiscovered(Region region, List<Beacon> list) {

        }
    });
}
 
示例6
@Override
protected boolean connect() throws SSJFatalException
{
	Log.i("Connecting to estimote beacons");
	connected = false;

	listener.reset();
	listener.setIdMode(options.idMode.get());

	region = new Region(options.region.get(), options.uuid.get() != null ? UUID.fromString(options.uuid.get()) : null, options.major.get(), options.minor.get());

	Handler handler = new Handler(Looper.getMainLooper());
	handler.postDelayed(new Runnable()
	{
		public void run()
		{
			beaconManager = new BeaconManager(SSJApplication.getAppContext());
			beaconManager.connect(EstimoteBeacon.this);
			beaconManager.setRangingListener(listener);
			beaconManager.setForegroundScanPeriod(200, 0);
			//beaconManager.setBackgroundScanPeriod(200, 0);
		}
	}, 1);

	long time = SystemClock.elapsedRealtime();
	while (!_terminate && SystemClock.elapsedRealtime() - time < _frame.options.waitSensorConnect.get() * 1000)
	{
		try
		{
			Thread.sleep(Cons.SLEEP_IN_LOOP);
		}
		catch (InterruptedException e)
		{
		}
	}

	if (!connected)
	{
		Log.e("Unable to connect to estimote beacons");
	}

	return connected;
}