在iOS 8 Beacon中没有检测到

时间:2014-09-22 16:18:45

标签: ios iphone ios8 ibeacon

iBeacon突然停止在iOS8中工作。在以前的iOS 8版本中它运行良好之前。有人帮我解决这个问题吗?

有什么问题,谢谢

3 个答案:

答案 0 :(得分:5)

您需要做的是在代码中添加访问位置服务的请求权限,如下所示:

if([self.locationManager respondsToSelector:@selector(requestAlwaysAuthorization)]) {
    [self.locationManager requestAlwaysAuthorization];
}

此外,在您的应用程序info.plist(AppName-info.plist)中,通过单击“信息属性列表”旁边的“+”符号添加密钥“NSLocationAlwaysUsageDescription”。选择其类型为“String”,并添加可在警报中显示的任何字符串值以访问位置权限。 我希望这能解决你的问题。


*注意:如果您正在构建自己的beacon sdk并在应用程序中集成,那么请在应用程序的info.plist中添加键值对,而不是sdk的键值对。 David Young的链接也指向正确的方向,但问题是你在sdk的info.plist中添加了键值对

答案 1 :(得分:1)

您需要使用XCode 6在iOS 8构建上为信标实现新的权限模型。请参见此处: 见这里:

Location Services not working in iOS 8

答案 2 :(得分:0)

只需将以下内容添加到viewdidload即可 它的作品对我来说..

[locationManager requestWhenInUseAuthorization];  [locationManager requestAlwaysAuthorization];