Обнаружение Oreo Beacon - PullRequest
       12

Обнаружение Oreo Beacon

0 голосов
/ 28 июня 2018

// Я вызываю функцию StartScan () в фоновом режиме, чтобы получить информацию о маяках. Но не могу сканировать маяки, когда я запускаю приложение для Android 8. Код работает под управлением других версий Android.

private void StartScan () {

    beaconManager = BeaconManager.getInstanceForApplication(this);
    beaconManager.getBeaconParsers().add(new BeaconParser().setBeaconLayout("m:2-3=0215,i:4-19,i:20-21,i:22-23,p:24-24"));

    region = new Region("allbeacons", Identifier.parse(UUID), Identifier.parse("0"), Identifier.parse("0"));

    RegionBootstrap regionBootstrap = new RegionBootstrap(this, region);
    Beacon.setHardwareEqualityEnforced(true);

    BeaconManager.setRssiFilterImplClass(ArmaRssiFilter.class);

    beaconManager.setBackgroundScanPeriod(1200);
    beaconManager.setBackgroundBetweenScanPeriod(0);
    beaconManager.setForegroundScanPeriod(1200); 


    try {
        beaconManager.updateScanPeriods();
    } catch (RemoteException e) {
        e.printStackTrace();
    }
    beaconManager.bind(this);

}

@ Override public void onBeaconServiceConnect () {

    try {
        beaconManager.startRangingBeaconsInRegion(region);
    } catch (RemoteException e) {
    }
    beaconManager.setRangeNotifier(new RangeNotifier() {
        @Override
        public void didRangeBeaconsInRegion(final Collection<Beacon> beacons, Region region) {


            beaconlist = new HashMap<Double, String>();

            if (beacons.size() > 0) {

                  In hear ı can got all beacons info using the other versions of android.

               }

}

@Override
public void didEnterRegion(Region region) {
    try {
        beaconManager.startRangingBeaconsInRegion(region);
    } catch (RemoteException e) {
        e.printStackTrace();
    }

}

@Override
public void didExitRegion(Region region) {

    beaconlist.clear();
    try {
        beaconManager.stopRangingBeaconsInRegion(region);
    } catch (RemoteException e) {
        e.printStackTrace();
    }

}

Я использую эту версию библиотеки Albeacon скомпилируйте 'org.altbeacon: android-beacon-library: 2.13 +'

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...