Мне нужно подражать маяку. Я использую устройства
- Android 6.0 (LG, Nexus 5)
- Android 9.0 (Honor 10)
В моем приложении / build.gradle:
implementation 'org.altbeacon:android-beacon-library:2.16.3'
В моей деятельности:
public void onClickGenerateBeacon(View view) {
Beacon beacon = new Beacon.Builder()
.setId1(UUID.randomUUID().toString())
.setId2("1")
.setId3("2")
.setManufacturer(0x0118)
.setTxPower(-59)
.setDataFields(Arrays.asList(new Long[]{0l}))
.build();
BluetoothManager btManager = (BluetoothManager) getSystemService(BLUETOOTH_SERVICE);
BluetoothAdapter btAdapter = btManager.getAdapter();
boolean isSupported = false;
if (btAdapter.isEnabled())
isSupported = btAdapter.isMultipleAdvertisementSupported();
if (isSupported) {
BeaconParser beaconParser = new BeaconParser().setBeaconLayout("m:2-3=beac,i:4-19,i:20-21,i:22-23,p:24-24,d:25-25");
BeaconTransmitter beaconTransmitter = new BeaconTransmitter(getApplicationContext(), beaconParser);
beaconTransmitter.startAdvertising(beacon);
}
}
Но Поддерживается всегда false
. И как результат не выполнить:
new BeaconParser().setBeaconLayout("m:2-3=beac,i:4-19,i:20-21,i:22-23,p:24-24,d:25-25");
Как я могу это исправить? Можно ли эмулировать маяки с помощью этой библиотеки или, может быть, есть другой подход?