当ibeacon在范围内时调用iOS应用程序

时间:2013-11-21 06:44:28

标签: ios cllocationmanager ibeacon

我有一个iOS应用程序(在iphone上),当ibeacon(服务器)在范围内时会触发。只要应用程序在后台或前台运行,它就可以正常运行。

有没有办法在应用程序未运行时调用它并检测到ibeacon?

通过阅读Apple的CLLocationManager类参考,我理解的是这种功能是可行的,但我可能错了。

然而,如果有人知道如何实现这一目标,我们会赞赏一个简短的例子。

发布了类似的问题,但似乎很模糊,所以决定再次提问

谢谢!

4 个答案:

答案 0 :(得分:4)

我几个星期以来一直在问这个问题,答案是否定的。

Apple在开发者论坛中对此很清楚:

“请注意,我正在谈论的是用户是否明确杀死了应用切换器中的应用。此时用户告诉我们这个应用不应该运行,我们将尊重再次启动应用程序。如果应用程序被操作系统终止(例如由于内存压力),那么我们将继续启动应用程序进行区域监控。希望这有点澄清。

如果应用程序被暂停(即用户点击主页按钮离开应用程序),则是,我们将在进入/退出区域时继续恢复应用程序。 iOS 7中唯一的变化是用户明确杀死应用切换器中的应用。“

https://devforums.apple.com/message/886796#886796

答案 1 :(得分:1)

我看到这个问题有一个公认的答案,但并不完全正确。您绝对可以根据进入范围的iBeacon进行应用启动。

我的博客文章中提供了详细的证据:http://developer.radiusnetworks.com/2013/11/13/ibeacon-monitoring-in-the-background-and-foreground.html

答案 2 :(得分:0)

重要的是要注意,从iOS 7.1+开始,即使用户明确强行杀死应用程序,如果此时监视信标区域,应用程序将再次启动并能够在后台运行在短时间内。

答案 3 :(得分:0)

我建议您阅读有关iOS中后台处理的所有内容。根据我的理解,它同样是用户运行应用程序以及系统资源的函数。根据我的理解,操作系统适应应用程序的使用,并整理所有流程以支持应用程序的使用。我怀疑这是切割和干燥。

对于内容下载,建议推送消息 - 不时启动更新。如果推送可能必须推送一两条消息来“重新注册”,我不会感到惊讶。