iBeacon突然停止在iOS8中工作。在以前的iOS 8版本中它运行良好之前。有人帮我解决这个问题吗?
有什么问题,谢谢
答案 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构建上为信标实现新的权限模型。请参见此处: 见这里:
答案 2 :(得分:0)
只需将以下内容添加到viewdidload即可 它的作品对我来说..
[locationManager requestWhenInUseAuthorization]; [locationManager requestAlwaysAuthorization];