我正在开发一个寻找信标的应用程序。但我有一个问题,我只能找到一个我在代码中定义的灯塔,但我想找到动态的信标,我不知道UUID。是否可以找到没有位置服务的灯塔?这是我的正义代码,我没有收到任何错误..我只想访问没有位置服务的区域..
NSUUID *beaconUUID = [[NSUUID alloc] initWithUUIDString:@"D57092AC-DFAA-446C-8EF3-C81AA22815B5"];
NSString *regionIdentifier = @"us.iBeaconModules";
CLBeaconRegion *beaconRegion = [[CLBeaconRegion alloc] initWithProximityUUID:beaconUUID identifier:regionIdentifier];
self.locationManager = [[CLLocationManager alloc] init];
if([self.locationManager respondsToSelector:@selector(requestAlwaysAuthorization)]) {
[self.locationManager requestAlwaysAuthorization];
}
self.locationManager.delegate = self;
self.locationManager.pausesLocationUpdatesAutomatically = NO;
[self.locationManager startMonitoringForRegion:beaconRegion];
[self.locationManager startRangingBeaconsInRegion:beaconRegion];
答案 0 :(得分:3)
不,没有位置服务就无法使用iBeacons。
背后的原因是这可能与隐私有关,因为使用iBeacons,您可以跟踪某人的位置。因此,如果用户转向位置服务,则意味着他们不希望您的应用程序跟踪其位置。
您当然可以使用蓝牙堆栈来检测您的iBeacons,但据我所知,您必须首先与信标配对才能检测到它的存在。