Ipad Air不承认iBeacon

时间:2014-12-02 18:08:37

标签: objective-c bluetooth-lowenergy ibeacon

我已经下载app来配置我从Accent系统购买的信标。它识别正在传输的信标,我可以轻松配置它。我已经使用uuidgen工具为信标制作一些UUID并在应用程序中进行设置。让我们说这个生成的UUID是" XXX-XXX" (我知道它的时间更长,而且它的十六进制值)。那么,它在我的灯塔中的设置如下:

UUID:XXX-XXX 专业:1111 次要:0001

我在代码中使用的那个UUID。我已将视图控制器设置为CLLocationManagerDelegate,并且在viewDidLoad方法中我有以下代码:

NSUUID *myUUID = [[NSUUID alloc] initWithUUIDString:@"XXX-XXX"];
CLBeaconRegion *region = [[CLBeaconRegion alloc] initWithProximityUUID:myUUID
                                                                identifier:@"Company"];

CLLocationManager *locManager = [[CLLocationManager alloc] init];
[locManager setDelegate:self];
[locManager startRangingBeaconsInRegion:region];

我还在该视图控制器中设置了以下方法,但它们永远不会被调用:

- (void)locationManager:(CLLocationManager *)manager didEnterRegion:(CLRegion *)region

- (void)locationManager:(CLLocationManager *)manager didRangeBeacons:(NSArray *)beacons
               inRegion:(CLBeaconRegion *)region 

我在Ipad Air上进行了测试,蓝牙已开启。

为什么永远不会被召唤?我究竟做错了什么?

1 个答案:

答案 0 :(得分:2)

您需要在iOS 8中询问位置权限,并在plist文件中添加使用说明字符串。

请查看此答案以获取更多详细信息:https://stackoverflow.com/a/24063578/361247