美好的一天。对不起,我的英语不好。是否提示有机会定义不在UUID上的双子区域,而在其上是一个部分。例如,我们有两个区域:
1 - UUID = 57547265-7261-772e-636f-6c0054000000
2-只有完整的部分(很可能这是最后一组) - 6c001137e000
我可以在我的方法中仅为最后一组UUID指定过滤器吗?
例如:
List<string> listUuids =new List<string>()
{ "57547265-7261-772e-636f-6c0054000000" , "6c001137e000" };
for (int i = 0; i <listUuids.Count; i ++)
{
var uuid = Identifier.Parse (listUuids [i]);
var region = new Region ("R" + i, uuid, null, null);
beaconManager.StartRangingBeaconsInRegion (region);
}
我真的很感激任何答案! 最诚挚的问候!
答案 0 :(得分:0)
您可以使用自定义信标解析器执行此操作。像这样:
BeaconManager.GetBeaconParsers().clear();
BeaconMannager.GetBeaconParsers().add(new Beacon parser().setBeaconLayout("m:2-3=0215,i:14-19,i:4-13,i:20-21,i:22-23,p:24-24");
var region = new Region("partial UUID region", Identifier.parse("0x6c001137e000"), null, null)
上述自定义解析器为iBeacon数据包定义四个标识符。第一个标识符是UUID的最后6个字节。第二个标识符是UUID的前10个字节。第三和第四个标识符分别是主要和次要标识符。
使用上面定义的区域将匹配与UUID的指定最后6个字节匹配的任何信标。