是否可以根据部分UUID检测信标? 为了检测具有特定UUID的信标,例如'08282922101291283379816fdae',我们使用Identifier.parse('08282922101291283379816fdae')。 我试图使用前3个值作为公司标识符,并且只想检测公司特定的信标。 所以我的问题是我们是否可以监控以UUID开头的信标'007'而不管其余的UUID?
非常感谢任何帮助,谢谢!
答案 0 :(得分:0)
如果使用Android Beacon Library,您可以通过定义指定第四个标识符(您的UUID前缀)的自定义信标格式来执行此操作。一个技巧是你只能通过前进一个或多个字节来做到这一点,所以当你可以匹配前缀0070或00时,你不能匹配007,因为它是1.5个字节。 (但你可以设置16个不同的区域来匹配0070,0071,0072,... 007F,这将完成与007相同的事情。
以下是AltBeacon的示例。其他信标布局也是如此:
beaconManager.getBeaconParsers().clear();
beaconManager.getBeaconParsers().add(new BeaconParser("AltBeacon with two-byte prefix identifier").setBeaconLayout("m:2-3=beac,i:4-5,i:4-19,i:20-21,i:22-23,p:24-24,d:25-25"));
...
Region region = new Region("Any UUID starting with 0070", Identifier.parse("0x0070", 2), null, null);