iOS 熄屏后如何继续监控 iBeacon?

2024-01-04

我正在开发一个 iOS 应用程序来监控 iBeacons。它在前景和背景中都表现良好。我还需要它即使在屏幕关闭时也能保持监控。现在我的问题是,当我用肩部按钮关闭屏幕时,NSLog显示iBeacon信号相应地关闭(RSSI=0,beacon.accuracy=-1.0),10秒后,根本没有找到信标,同时不断调用委托方法 locationManager:didRangeBeacons:inRegion: 。屏幕关闭时应用程序似乎正在运行,但 iOS 关闭了 iBeacon 测距的位置服务。我尝试设置“locationManager.pausesLocationUpdatesAutomatically = NO;”但仍然不起作用。对于这个问题有什么建议吗?提前致谢。


看来你正在做ranging而不是监控。仅当应用程序处于活动状态(无论是在前台还是在后台)时,测距才起作用。问题是,当你离开应用程序或锁定屏幕后,iOS 会自动让应用程序进入睡眠状态几秒钟。

你必须记住的是,iOS 上确实不存在“永久后台状态”这样的东西。应用程序在后台运行一段有限的时间,同时转换到挂起状态(让它们完成上传/下载),还有一些后台模式有时使应用程序能够在后台运行,但这些通常是保留的对于非常特定的应用程序 - 例如,“音频”后台模式意味着应用程序只要播放音乐就可以在后台运行,等等。“位置”服务有一个后台模式,但它是为实时导航而保留的打开导航应用程序。

Beacon 监控然而,即使您的应用程序进入睡眠状态,或者由于内存压力而被 iOS 终止,它仍会继续运行。当您进入或超出信标范围时,iOS 会将您的应用程序启动到后台来处理该事件,并给予它几秒钟的时间(您可以使用后台执行任务 https://developer.apple.com/library/ios/documentation/iPhone/Conceptual/iPhoneOSProgrammingGuide/BackgroundExecution/BackgroundExecution.html)这样做(您可以在这段时间内进行调整),但随后又回到睡眠状态。

您可能还想看看这个问题:
当应用程序在后台时接收来自信标的信号 https://stackoverflow.com/questions/33984778/receive-signal-from-beacon-while-app-is-in-the-background

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

iOS 熄屏后如何继续监控 iBeacon? 的相关文章

随机推荐

  • Python IndexError:列表索引超出范围

    我试图让 Python 用 500 只股票的收盘价填充列表 虽然该代码似乎只适用于少数股票 但数量过多就会带来问题 Python 不断给我以下错误 OneClose append Data i 4 IndexError list index
  • 将数据从 C++ 传递到 PHP

    我需要将一个值从 PHP 传递到 C 我想我可以用 PHP 来做passthru 功能 然后我希望 C 对该值执行某些操作并将结果返回给 PHP 这是我无法解决的问题 有谁知道如何将数据从 C 传递到 PHP 我不想使用中间文件 因为我认为
  • 如何使用VBA截取网页截图?

    如何在Excel中使用VBA截取网页截图 问题是 屏幕截图只能通过按键盘的 F6 键来进行 因为 Screenhunter 就是用于此目的的 打印屏幕键被禁用 我使用了以下代码 但意识到无法使用sendkey函数 sub test appl
  • Numpy n 个奇数根(包括负值)

    我想在Python中计算一些数字的n次奇根 Numpy 作为立方根函数 使用该函数我可以计算 x 1 3 x np linspace 100 100 100 np cbrt x gt gt gt array 4 64158883 4 268
  • 如何设置 CultureInfo.InvariantCulture 默认值?

    当我在 C 中有这样一段代码时 double a 0 003 Console WriteLine a 它打印 0 003 如果我还有另一段代码 double a 0 003 Console WriteLine a ToString Cult
  • Mathematica:如何清除符号的缓存,即取消设置无模式的 DownValues

    我是一个糟糕的缓存器 有时 当没有人在看时 我会缓存结果而不包含完整的上下文 如下所示 f x f x x a a 2 f 1 DownValues f Out 2 HoldPattern f 1 gt 3 HoldPattern f x
  • InnoDB Write Log效率太高超过100%(1953.15%)?

    我的服务器上有 MariaDB 具有 16 32 个 CPU 核心 运行 mysqltuner 时一切似乎都正常 除了InnoDB写日志效率 采取1953 15 想知道这正常吗 或者有什么解决方案可以解决这个问题吗 感谢您的建议 InnoD
  • C++——如何重载运算符+=?

    鉴于以下代码片段 class Num public Num int iNumber 0 m iNumber iNumber Num operator const Num rhs this gt m iNumber this gt m iNu
  • 带图像的 Xamarin Forms ListView |文字|时间

    我目前正在使用 xamarin 表单构建一个混合应用程序 我正在尝试构建一个列表视图 显示带有图标和时间戳的错误 这是我想重新制作成 xamarin 形式的概念设计 我用了一个ImageCell尝试让带有一些文本的图标正常工作 但现在我想在
  • MongoDB 中复合 _id 的预期行为?

    我有一个包含 3 个数字属性的复合 id id KeyA 0 KeyBOARD 0 Key 0 相关数据库的 KeyA 有 200 万个相同值 KeyB 有 50 万个相同值的集群 我的理解是 我可以使用以下命令有效地查询 KeyA 和 K
  • 如何在 JupyterLab 中拆分和合并单元格

    In Jupyter实验室 https jupyterlab readthedocs io en latest 给定以下代码单元格 如何将其拆分为多个单元格 同样 给定以下单元格 如何将它们组合成单个单元格 直接使用 JupyterLab
  • opencv颜色检测

    使用opencv 可以在图像或视频帧中检测某种颜色 在一定范围的rgb值之间 吗 您需要定义 RGB 阈值 并处理图像中适合定义的像素 希望不是整个图像 而是较小的感兴趣区域 可能是移动的前景形状 与所讨论的内容类似here http ww
  • Symfony2:验证因第一个错误而停止

    看来 validator gt validate class Symfony2 的验证服务 http symfony com doc current book validation html在 if 返回之前运行所有验证检查 error班级
  • 尽管 rasterized=True,为什么 matplotlib 图文件大小很大?

    一个简单的例子 from matplotlib pyplot import plot savefig from numpy random import randn plot randn 100 randn 100 500 k alpha 0
  • 智能生成String排列组合的方法

    String database a b c 我想根据给定生成以下字符串序列database a b c aa ab ac ba bb bc ca cb cc aaa 我只能想到一个相当 虚拟 的解决方案 public class JavaA
  • 为什么 findstr 不能正确处理大小写(在某些情况下)?

    在 cmd exe 中编写最近的一些脚本时 我需要使用findstr使用正则表达式 客户需要标准 cmd exe 命令 无 GnuWin32 Cygwin VBS 或 Powershell 我只是想知道变量是否包含任何大写字符并尝试使用 g
  • 在 C# 中绘制到新“层”

    构建一个小绘画程序并尝试合并图层的概念 我使用 PictureBox 控件来显示图像 并从 PictureBox 显示的图像中获取 Graphics 对象并绘制到该对象 我的问题是我试图弄清楚如何绘制覆盖在图片框顶部的新 Graphics
  • 我可以以纵向模式播放视频吗?

    谁能解释一下如何在 iPhone 设备上以纵向模式播放视频 如果您提供一些示例代码以供参考 将会非常有帮助 提前致谢 如果您想使用 MPMoviePlayerController 以纵向模式显示电影 那就更好 让您的视频旋转 90 度 以便
  • Oracle 行争用导致高吞吐量 JMS 应用程序中的死锁错误

    Summary 我有兴趣了解高吞吐量应用程序的最佳实践是什么 这些应用程序具有批量消息试图更新同一行并出现 Oracle 死锁错误的情况 我知道您无法避免这些错误 但是如何优雅地从这些错误中恢复 而不被一次又一次发生的此类死锁错误所困扰 D
  • iOS 熄屏后如何继续监控 iBeacon?

    我正在开发一个 iOS 应用程序来监控 iBeacons 它在前景和背景中都表现良好 我还需要它即使在屏幕关闭时也能保持监控 现在我的问题是 当我用肩部按钮关闭屏幕时 NSLog显示iBeacon信号相应地关闭 RSSI 0 beacon