Я использую Eddystone-URL с библиотекой Android Beacon. Я помещаю сжатый URL-адрес в файлы данных маяка, но когда я получаю сигнал, поля данных пусты. Почему это может происходить? прикрепите сюда код передатчика:
try {
byte[] buf = UrlBeaconUrlCompressor.compress("http://www.google.com");
beacon = new Beacon.Builder()
.setId1("0000FEAA-0001-1000-8000-00805F9B34FB")
.setManufacturer(0xFEAA)
.setTxPower(-59)
.setDataFields(bytesToListOfLongs(buf))
.build();
} catch (MalformedURLException e) {
e.printStackTrace();
}
BeaconParser beaconParser = new BeaconParser()
.setBeaconLayout(BeaconParser.EDDYSTONE_URL_LAYOUT);
beaconTransmitter = new BeaconTransmitter(getApplicationContext(), beaconParser);
Я расшифровал поля данных перед началом передачи и хорошо вижу URL-адрес, но я ничего не получаю в этих полях на другом смартфоне.