【发布时间】:2014-09-22 16:18:45
【问题描述】:
iBeacon 在 iOS8 中突然停止工作。在以前的 iOS 8 版本中运行良好之前。有人帮我解决这个问题吗?
有什么问题,谢谢
【问题讨论】:
-
您是否尝试重新启动 iPhone?是否允许您的应用获得用户本地化?
-
是的,我重新启动了 iPhone,我的应用程序允许获取用户位置。但是没用
iBeacon 在 iOS8 中突然停止工作。在以前的 iOS 8 版本中运行良好之前。有人帮我解决这个问题吗?
有什么问题,谢谢
【问题讨论】:
你需要做的是在代码中添加访问位置服务的请求权限,如下:
if([self.locationManager respondsToSelector:@selector(requestAlwaysAuthorization)]) {
[self.locationManager requestAlwaysAuthorization];
}
此外,在您的应用程序 info.plist(AppName-info.plist) 中,通过单击“信息属性列表”旁边的“+”号添加键“NSLocationAlwaysUsageDescription”。选择其类型为“字符串”,并添加可以在警报中显示的任何字符串值以访问位置权限。 我希望这能解决您的问题。
*注意:如果你正在构建自己的beacon sdk并集成到应用程序中,那么请在应用程序的info.plist中添加键值对,而不是在sdk中添加键值对。 David Young 的链接也指向了正确的方向,但问题是您在 sdk 的 info.plist 中添加键值对
【讨论】:
您需要为使用 XCode 6 构建的 iOS 8 上的信标实现新的权限模型。请参见此处: 见这里:
【讨论】:
只需将以下内容添加到您的 viewdidload 它对我有用..
[locationManager requestWhenInUseAuthorization]; [locationManager requestAlwaysAuthorization];
【讨论】: