gpt4 book ai didi

ios - 当应用程序被杀死/暂停时,iOS 设备可以检测到 Eddystone 信标吗?

转载 作者:行者123 更新时间:2023-12-01 16:02:21 26 4
gpt4 key购买 nike

我需要编写一个应用程序,每次靠近 Eddystone 信标时调用 REST 服务。
我的目标是 iOS 9 或更高版本并使用 Swift 编写。

到目前为止,当应用程序处于前台以及应用程序处于后台几个小时时,我已经设法让应用程序响应来自信标的广告。
然后在应用程序处于后台几个小时后,什么也没有发生。

我怀疑该应用程序被操作系统杀死或暂停。

我尝试的第一件事是使用 CLLocationManager 和 CLBeaconRegion 进行地理围栏。
但是在谷歌搜索之后,我发现这只适用于 iBeacon,而且我的信标肯定使用 Eddystone 协议(protocol)。

根据 Apple 文档,iBeacon 上的地理围栏应该“唤醒”该应用程序,即使该应用程序已被杀死(无论是被人还是被操作系统杀死)。我可以对 Eddystone 信标有类似的行为吗?

我认为不是,但在这种情况下,我想要一个明确的答案:)

谢谢

顺便说一句,这个文档 https://developer.apple.com/library/content/documentation/UserExperience/Conceptual/LocationAwarenessPG/RegionMonitoring/RegionMonitoring.html

有时会谈论 Beacon 和其他一些关于 iBeacons 的话题,所以目前还不清楚这是否仅适用于 iBeacons。鉴于 UUID 的格式,我认为确实如此,但是..

最佳答案

在监视 CLBeaconRegion 对象时,您可以使用 iOS CoreLocation API 在信标检测时将应用程序启动到后台。 这仅适用于 iBeacon,不适用于 Eddystone ,因为 CoreLocation 只检测 iBeacon。

要在 iOS 上检测 Eddystone,您必须使用不提供此功能的 CoreBluetooth API。

做你想做的事的一种常见方法是使用一个信标,它将 Eddystone 和 iBeacon 交错。使用 iBeacon 启动您的应用程序并使用 Eddystone 进行进一步处理。

关于ios - 当应用程序被杀死/暂停时,iOS 设备可以检测到 Eddystone 信标吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/46793744/

26 4 0
文章推荐: constraint-programming - 如何在 minisat 中表达调度问题?
文章推荐: ios - 使用另一个数组的值过滤一个数组
文章推荐: perl - 使用 perl 将\x3c/div\x3e 转换为
文章推荐: ios - 旋转 MTLTexture
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com