【发布时间】:2017-05-15 04:35:55
【问题描述】:
我正在用 Swift 开发一个 iOS 应用程序来监控信标事件。这是我第一次真正的信标尝试。
我正在使用 Estimote 信标,但没有使用 Estimote SDK。我正在使用核心位置和带有 didExit 和 didEnter 事件的 CLLocationManager。
我只监听登录到我的应用的当前用户注册的信标。例如,John Doe 可以注册到信标 A 和 B,而 Mary Sue 只注册到信标 C。我遇到了很多假叶子,想知道是不是因为我在哪里实现了我的代码。
我了解在验证休假事件时默认有 30 秒的延迟,但我遇到了超过 30 秒的时间段,而没有来自点空白范围的蓝牙信号。也许实施一个 30 分钟的窗口而不是 30 秒的休假验证?
由于用户必须登录才能知道要监控哪些信标,因此位置管理器驻留在用户的默认配置文件视图控制器中。即使手机被锁定,我也成功获得了信标交互,但并不一致。我很担心,因为我知道视图控制器本身是由 iPhone 自行决定暂停/激活的,并且可能会暴露我的逻辑缺陷。
是否应将所有面向位置的代码放在应用委托文件中?如果我从我的配置文件视图到应用程序委托实现了一个协议,我可以先在应用程序委托中实例化它,然后在用户登录后检索信标数据。
在我的研究中,我一直在努力寻找“iOS 信标约定”,只是提供一些结果的示例。不太确定实际上什么是正确的做法。
谢谢!
【问题讨论】:
-
您必须将您目前所做的代码提供给我们,然后我们才能为您提供一些解决方案。
标签: ios swift bluetooth monitoring beacon