如何在不知道其UUID,主要和次要值的情况下获取objective-c中的信标的mac地址?

时间:2014-12-31 10:01:57

标签: ios objective-c iphone ibeacon ios-bluetooth

在我的应用程序中,我需要搜索最近的信标并检测其mac地址,以计算用户在建筑物中的确切位置。问题是我们可以在没有信标的UUID,主要和次要值的情况下从iOS应用程序中检测到最近的信标mac地址吗?

3 个答案:

答案 0 :(得分:2)

你试过吗?

- (void)beaconManager:(ESTBeaconManager *)manager didRangeBeacons:(NSArray *)beacons inRegion:(ESTBeaconRegion *)region
{
     self.beaconsArray = beacons;

     ESTBeacon *beacon = [self.beaconsArray objectAtIndex:i];
     NSLog(@"beacon.macAddress = %@",beacon.macAddress);

}

答案 1 :(得分:2)

想一想:如果你不知道信标的UUID,你怎么知道它的位置?灯塔不知道它在哪里。有人必须将信标放在他们的位置,必须写下他们的位置,并且必须已将该位置提供给您的应用。在这种情况下,您会假设他们也写下了UUID。

Apple的想法是,你不能(轻松地)编写一个只找到任何信标的应用程序。信标必须与您的应用相关,否则它们不属于您的业务。让我们假设您为超市编写了一个应用程序,该应用程序对所有信标使用相同的UUID。该应用假设忽略所有其他UUID。

答案 2 :(得分:1)

Core Location支持的通用iBeacon协议不会公开信标的MAC地址。您需要知道信标中配置的UUID并将其设置在信标区域中。

其他信标可能会根据其他答案公开其他信息。