package tmay.bluetoothbacon.beacons.fragments; import android.app.Fragment; import android.content.Context; import android.content.Intent; import android.content.ServiceConnection; import android.os.RemoteException; import android.util.Log; import org.altbeacon.beacon.BeaconConsumer; import org.altbeacon.beacon.BeaconManager; import org.altbeacon.beacon.MonitorNotifier; import org.altbeacon.beacon.Region; import org.androidannotations.annotations.AfterViews; import org.androidannotations.annotations.EFragment; import tmay.bluetoothbacon.R; /** * Created by Terry on 10/6/14. */ @EFragment(R.layout.fragment_beacon_dectector) public class BeaconDetectorFragment extends Fragment implements BeaconConsumer { public static BeaconDetectorFragment newInstance() { return new BeaconDetectorFragment_(); } private BeaconManager beaconManager; private Context context; @AfterViews void onAfterViews() { beaconManager = BeaconManager.getInstanceForApplication(getActivity()); beaconManager.bind(this); } @Override public void onBeaconServiceConnect() { BeaconManager.getInstanceForApplication(getApplicationContext()).setMonitorNotifier(new MonitorNotifier() { @Override public void didEnterRegion(Region region) { Log.i("beacon", "I just saw an beacon for the first time!"); } @Override public void didExitRegion(Region region) { Log.i("beacon", "I just left an beacon for the first time!"); } @Override public void didDetermineStateForRegion(int i, Region region) { } }); try { beaconManager.startMonitoringBeaconsInRegion(new Region("here", null, null, null)); } catch (RemoteException e) { e.printStackTrace(); } } @Override public Context getApplicationContext() { return getActivity().getApplicationContext(); } @Override public void unbindService(ServiceConnection serviceConnection) { } @Override public boolean bindService(Intent intent, ServiceConnection serviceConnection, int i) { return false; } }