4

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

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

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

但是,如果有人知道如何实现这一点,则可以举一个简短的例子。

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

谢谢!

4

4 回答 4

4

我已经问这个问题好几个星期了,答案是否定的。

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

“请注意,我所说的是如果用户在应用切换器中明确终止该应用。此时用户告诉我们该应用不应运行,我们将通过不重新启动该应用来尊重这一点更多。如果应用程序被操作系统终止(例如由于内存压力),那么我们将继续启动应用程序进行区域监控。希望能澄清一点。

如果应用程序只是暂停(即用户点击主页按钮离开应用程序),那么是的,当进入/退出区域时,我们将继续恢复应用程序。iOS 7 中唯一的变化是,如果用户在应用切换器中明确地终止了应用。”

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

于 2013-11-21T12:32:55.733 回答
1

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

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

于 2013-11-22T03:27:31.803 回答
0

需要注意的是,从 iOS 7.1+ 开始,即使用户明确强制终止应用程序,如果此时它正在监视信标区域,应用程序将再次启动并能够在后台运行一小段时间一段的时间。

于 2014-08-28T16:28:55.757 回答
0

我建议您阅读有关 iOS 后台处理的所有内容。据我了解,它与用户运行应用程序的数量以及系统资源一样多。据我了解,操作系统适应应用程序的使用并编组所有进程以支持应用程序的使用。我怀疑这是切割和干燥的。

对于内容下载,建议使用推送消息 - 不时启动更新。如果 push 可能不得不按原样推送一两条消息以“重新注册”,我不会感到惊讶。

于 2014-10-27T03:52:53.060 回答