iBeacons:如果应用程序在后台,locationManager:didEnterRegion:仅在锁屏显示时调用

2023-12-23

我正在开发一个监视 iBeacon 区域的 iOS 应用程序。当应用程序在后台运行时,我希望它在遇到特定的 iBeacon 区域时发送本地通知。一切工作正常,除了一件事:locationManager: didEnterRegion 显然不会被调用,直到用户显示锁定屏幕。因此,即使设备在应用程序处于后台时通过 iBeacon 区域,它们也不会收到通知,直到显示锁定屏幕。

我还尝试过使用 startMonitoringForRegion,并且这种方法有效 - 如果应用程序在后台运行,则 locationManager: didDetermineState: 在设备进入 iBeacon 区域时触发。但是,它只会执行一次 - 如果用户随后退出并重新进入 iBeacon 区域,locationManager: didDetermineState 不会再次触发。

我正在运行 iPhone 5s 并使用 iPhone 4s 作为 iBeacon,如果这有什么区别的话。

更正:显然只有当我使用 iPhone 4s 作为客户端时才会出现这种现象。如果我使用 5s,通知会立即发送。


只是想获取更多信息。您是否已在 CLBeaconRegion 上将 notificationEntryStateOnDisplay 设置为 YES?听起来是这样。

来自文档:

设置为“是”时,当用户打开显示器并且设备已位于该区域内时,位置管理器会发送信标通知。即使您的应用程序未运行,也会发送这些通知。在这种情况下,系统会将您的应用程序启动到后台,以便它可以处理通知。在这两种情况下,位置管理器都会调用其委托对象的 locationManager:didDetermineState:forRegion: 方法。

该属性的默认值为“否”。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

iBeacons:如果应用程序在后台,locationManager:didEnterRegion:仅在锁屏显示时调用 的相关文章

  • 多对多关系中的 KVO 对象属性

    我有一个核心数据对多关系 由父 gt 子组成 我想设置一个键值观察机制 以便当任何子对象上的属性 例如 firstName lastName 发生更改时 它会触发通知 使用标准 KVO 语法时 self parentObject addOb
  • 从服务器实时更新的 iOS 应用程序:Socket(使用流)还是 Apple 推送通知服务?

    我正在尝试制作一个 iOS 5 应用程序 该应用程序具有来自服务器的实时信息 它只会在应用程序运行时使用这些 为了使其实时且无需轮询 我一直在评估两种设计路线 创建从应用程序到服务器的套接字 并通过流交换信息 Pros 相对简单 不涉及第三
  • 如何使用 Swift 关闭打开的文件?

    我正在下载约 1300 张图像 这些是小图像 总大小约为 500KB 但是 下载并将它们放入 userDefault 后 我 收到如下错误 libsystem network dylib nw route get ifindex 套接字 P
  • 解雇ViewControllerAnimated:完成:在 iOS 8 上

    在 iOS dismissViewControllerAnimated completion 会导致presentedViewController being nil 在 iOS 8 中 presentedViewController仍然指
  • 从 iPhone 上的 NSString 中删除 HTML 标签

    有几种不同的方法可以删除HTML tags从一个NSString in Cocoa One way http cocoa karelia com Foundation Categories NSString Flatten a string
  • 如何在 swift 3 中发布原始数据?

    如果我使用 Postman 发布原始数据 就会收到响应 我正在使用这个代码 var dict Dictionary
  • 在 iOS safari 中禁用选择上下文菜单

    我想禁用在 iOS Safari 网络浏览器 中选择特定文本后出现的默认上下文菜单 那可能吗 这是可能的 请参阅这个例子 http jsfiddle net z9ZNU 基本上 重要的部分是设置正确的 css 属性 body webkit
  • 使用捏合手势;如何放大用户手指实际“捏”的位置?

    我已经在我的应用程序中的 UIImageView 上实现了 UIPinchGestureRecognizer 但是无论我在图像的哪个位置捏合 它似乎都会放大到同一个位置 有谁知道我如何让它放大到用户实际 捏 的地方 请参阅下面的代码 视图控
  • 相机叠加图片

    edit 3 好消息和坏消息 好消息是 在连接检查器中 通过断开覆盖 UIToolbar 并连接 UIImageview 我看到theKing 但是 坏消息 我没有看到我也需要的 UIToolbar 所以现在的问题是 当用户完成这里操作后
  • 如何使用 HTTP 标头发送非英语 unicode 字符串?

    我是 HTTP 相关问题的新手 我的问题是在 iOS 开发中 我想使用 HTTP 标头发送一个字符串 所以我使用 httpRequest setValue nonEnglishString forHTTPHeaderField custom
  • 未安装的应用程序的URL方案

    简单的问题 我正在开发一个将注册自己的 URL 方案的应用程序 我计划通过人们最喜欢的 QRCode 阅读器使用 QRCode 启动该应用程序 我的问题 如果我的应用程序尚未安装在他们的 iPhone iPad 上 会发生什么 他们会被引导
  • 如何将 #ifdef DEBUG 添加到 Xcode?

    我的项目中有一些代码永远不应该在发布版本中使用 但在测试时很有用 我想做这样的事情 ifdef DEBUG Run my debugging only code endif 在 Xcode 4 中哪里添加 DEBUG 设置 我尝试将其放入
  • 连接到 Apple Music

    所以我尝试使用 React Native 应用程序从 iOS 设备连接到 Apple Music 有一个 API 可以执行相同的操作 但我需要从 storekit 框架调用一个函数 提出个性化请求 苹果音乐API https develop
  • Facebook 登录 Apple CNA

    问题 是否可以设置 Facebook 登录以在 CNA 中使用 是否为开发人员提供 CNA 文档 您可以使用任何开发人员工具调试 CNA 屏幕吗 Details 我创建了一个使用电子邮件提交表单或 Facebook 登录按钮的强制门户登录页
  • 为什么 iOS 5.0 不喜欢纯窗口应用程序?为什么它要求使用视图控制器?

    我有一个使用 Xcode 4 0 的 基于窗口的应用程序 模板创建的 iOS 应用程序 当时运行良好 并且使用的是 iOS 4 3 SDK 这是一个简单地将按钮 标签等直接放置到窗口上的应用程序 没有视图控制器 什么都没有 但现在我已经升级
  • 即时将图像添加到 AR 资源以进行图像识别

    ARKit1 5介绍图像识别 在代码中 您必须创建一组参考图像 如下所示 let referenceImages ARReferenceImage referenceImages inGroupNamed AR Resources bund
  • UINavigationController 在后退按钮单击时向下滚动

    我正在开发一个带有多个导航控制器的 iPhone iPad 应用程序 当我在设备处于横向模式时单击视图的后退按钮时 前一个视图会垂直滚动到屏幕中 而不是像往常一样水平滚动 推送动画始终水平工作 正如它应该的那样 是什么导致了这个奇怪的问题
  • 将 Facebook 图片 URL 上传到 Firebase 存储

    我正在尝试将用户的 Facebook 个人资料图片上传到 Firebase 存储 let dictionary result as NSDictionary let data dictionary objectForKey data let
  • Swift 3 和 Xcode8 - init 的使用不明确

    在我安装 Xcode 8 并将项目转换为 Swift 3 之前 以下行没问题 现在转换后看起来像这样 let valueData Data Data bytes UnsafePointer
  • 如何将 NSAppTransportSecurity 添加到 Cordova 项目

    我正在从事一个 ionic cordova 项目 该应用程序需要配置 iOS 9 版本的应用程序传输安全例外 有谁知道如何将以下配置添加到 cordova 项目配置文件中 配置 xml

随机推荐