Android altbeacon库-如何访问已扫描信标的完整负载

如何使用altbeacon库访问Scand Beacon的原始有效载荷数据?

zhang374793162 回答:Android altbeacon库-如何访问已扫描信标的完整负载

Android信标库不是为此目的而设计的,因此执行所需操作的API有点尴尬。

检测到该库后,它将自动解析有效负载并将字节转换为信标对象。但是因为该库还支持传输,所以它具有实用程序,可将信标对象直接转换回字节。如果使用iBeacon,可以将检测到的信标转换回原始字节,如下所示:

BeaconParser iBeaconParser = new BeaconParser()
    .setBeaconLayout("m:2-3=0215,i:4-19,i:20-21,i:22-23,p:24-24");
byte[] payloadBytes = iBeaconParser.getBeaconAdvertisementData(beacon);  

通常,这是一个无损过程,因为信标格式通常会耗尽有效载荷的每个字节。万一您有一个不使用所有字节的自定义信标格式(不太可能发生),则需要稍稍更改格式以在末尾添加额外的数据字段,以便将完整的有效内容解析为信标。否则,您将在转换中丢失这些多余的字节。

本文链接:https://www.f2er.com/2626207.html

大家都在问