Моя проблема в том, что менеджер маяков просто находит маяк.
Мой код указан ниже;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
//location permission
if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.M) {
requestPermissions(new String[]{Manifest.permission.ACCESS_COARSE_LOCATION}, 1234);
}
button = (Button) findViewById(R.id.b1);
//button onClick
button.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
mBeaconManager = BeaconManager.getInstanceForApplication(getApplicationContext());
mBeaconManager.getBeaconParsers().add(new BeaconParser().
setBeaconLayout(BeaconParser.EDDYSTONE_UID_LAYOUT));
mBeaconManager.getBeaconParsers().add(new BeaconParser().
setBeaconLayout(BeaconParser.EDDYSTONE_TLM_LAYOUT));
mBeaconManager.getBeaconParsers().add(new BeaconParser().
setBeaconLayout(BeaconParser.EDDYSTONE_URL_LAYOUT));
mBeaconManager.bind(MainActivity.this);
}
});
}
@Override
public void onBeaconServiceConnect() {
ArrayList<Identifier> identifiers = new ArrayList<>();
identifiers.add(null);
Region region = new Region("all-beacons-region", identifiers);
try {
mBeaconManager.startRangingBeaconsInRegion(region);
} catch (RemoteException e) {
e.printStackTrace();
}
mBeaconManager.addRangeNotifier(this);
}
// отображение размера маяка
@Override
public void didRangeBeaconsInRegion (Коллекция маяков, регион региона) {Log.i (TAG, "" + beacons.size ()); }
}
Результат beacon.size 1. Но есть три маяка.
Что я должен сделать, чтобы найти более одного маяка? Я буду счастлив, если вы сможете мне помочь.