【问题标题】:How to reach userLocation globally?如何在全球范围内到达 userLocation?
【发布时间】:2011-11-02 15:26:45
【问题描述】:

我想获取项目 userLocation 变量中的所有类。我如何确定自己是全球性的?这合理吗?我必须分别定义每个类吗?我也想在后台访问应用程序。

谢谢

【问题讨论】:

    标签: ios cllocationmanager uiapplicationdelegate userlocation


    【解决方案1】:

    从不使用全局变量(在任何编程语言中),这通常是糟糕的架构/设计。

    您应该使用Singleton Pattern (see Apple Doc) 来收集通用信息或应用程序全局功能。吝啬地使用它(在没有正当理由的情况下到处使用它也是糟糕的设计)

    在 userLocation 的情况下,无论如何您都可以使用CLLocationManagerlocation 属性获取 GPS 检索到的最新用户位置,因此在这种情况下不需要全局变量或单例。

    【讨论】:

    • 感谢您的回复。当我需要时,我正在使用单例模式。为了我的好奇心,以及一个我要求更好的架构的问题。再次感谢您。
    【解决方案2】:

    不建议创建多个 CLLocationManager 的实例。 相反,我通常使用 appDelegate 来保存单个实例。你也可以看看CLLocationManager in a single instance tutorial,它演示了如何使用appDelegate。

    至于从后台访问应用程序 - 这取决于您想要做什么。你能详细说明你想达到什么目标吗?

    【讨论】:

      猜你喜欢
      • 2020-07-11
      • 2021-09-07
      • 1970-01-01
      • 2016-07-03
      • 2017-06-12
      • 2017-12-09
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多