gpt4 book ai didi

ios - 将 iBeacon 监控逻辑放入应用程序委托(delegate)中以便在应用程序 session 期间持续存在是否明智?

转载 作者:行者123 更新时间:2023-11-28 23:45:50 24 4
gpt4 key购买 nike

我想让我的应用程序监控 iBeacons,而不依赖于某个显示的 View Controller 。为了避免重复代码,是否应该将iBeacon监控逻辑放在app delegate中?基本上,我希望应用程序在用户进入某个区域时显示本地推送通知,同时仍然能够在不同屏幕上浏览应用程序。

最佳答案

您实际上不必将逻辑放入 AppDelegate(尽管对于简单的应用程序我经常这样做)。要让您的应用程序在后台启动,您需要做的关键是触发逻辑以从 AppDelegate 的 didFinishLaunching 方法开始监控。只要方法调用设置了监控(即使它确实所以通过调用另一个类的方法中的逻辑)。它将导致您的监控回调方法在之后立即被调用。

只要您在 AppDelegate 中持有对持有您的逻辑的类的引用(例如,使其实例成为 AppDelegate 中的类变量),它就不会被垃圾收集。

如果您希望在应用的其他部分访问此类的状态,只需将其设为单例即可。然后您可以调用相同的类实例以从各种 View Controller 访问您的信标跟踪状态。

您可以在 BeaconTracker 中看到这方面的示例我为一个完全使用这种单例方法的开源项目构建的类。您可以浏览同一项目中的 AppDelegate 和 View Controller 以查看其使用情况。

关于ios - 将 iBeacon 监控逻辑放入应用程序委托(delegate)中以便在应用程序 session 期间持续存在是否明智?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/52692777/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com