如果我初始化追加用户位置的CLLocaitonManager实例,它会增加负载吗?或者我应该在类之间使用一个CLLocaitonManager实例?许多CLLocationManager实例
回答
创建太多CLLocaitonManager
或增加核心位置服务的更新间隔会严重损耗电池。因此不建议创建太多实例。不要看到这个需要。
一个好的做法是在viewController中初始化一个CLLocaitonManager
。如果移动到另一个viewController,则在当前的更新stopUpdates在新的viewController中创建一个新的管理器。这是一种模式。
另一种模式是在应用程序代理&中创建一个CLLocaitonManager
,使其可在整个应用程序中使用。这就像一个全局变量。但通常避免全局声明这个变量,因为它不断消耗你的电池寿命。
所以基本上如果你所有的类只是一个viewController的一部分,那么只创建一个共享位置更新的CLLocaitonManager
&。如果没有,则为每个viewController创建一个。
你有这方面的证据吗?我总是用CLLocationManager创建一个单例,但正如我所做的那样,我总是为苹果设计API的方式感到震惊,假设你将拥有多个CLLocation管理器。 (例如,doUpdateToLocation指定了CLLocationManager) –
位置服务要求给定设备上存在特定的硬件。所以多数民众赞成为什么,它的多少CLLocationManager实例创建无关紧要。通常避免全局声明这个变量,因为它不断消耗你的电池寿命。每当需要查找用户位置时,另一个明智的停止和开始。
- 1. CLLocationManager的多个实例
- 2. CLLocationManager的额外实例?
- 3. 许多实例与许多std :: shared_ptr
- 4. 实例化许多类
- 5. 如何避免多次分配CLLocationManager实例?
- 6. 使用多个CLLocationManager实例有没有任何性能损失
- 7. 许多实例变量或散列与许多键?
- 8. C#Singleton对象的许多实例
- 9. AppEngine实例的许多自定义域
- 10. 从Redis读取的许多Logstash实例
- 11. 单实例部署在许多节点
- 12. Rails,一个模型的许多实例
- 13. 许多实例的EC2 npm更新
- 14. 为什么许多nHibernate示例代码实例包含Castle dll?
- 15. 每个应用程序有多个CLLocationManager实例。他们互相混淆了吗?
- 16. 在ManyToOne关系的许多方面创建实体的实例
- 17. LINQ与许多实体许多relatioship
- 18. 许多到许多实体框架
- 19. 在许多获取每个实例的总出现许多透视表
- 20. 涉及CLLocationManager的类实现
- 21. 在哪里实施CLLocationManager
- 22. 在AppDelegate中使用CLLocationManager实例化Singleton类didFinishLaunchingWithOptions
- 23. 如何在应用程序中创建一个CLLocationManager实例?
- 24. 多个实例
- 25. 多个实例
- 26. 多个实例
- 27. 多个实例
- 28. 多个实例
- 29. 多个实例
- 30. 多实例
你能不能提出你的问题? –
另请参阅:http://stackoverflow.com/questions/3614511/is-there-any-performance-penalty-for-using-multiple-cllocationmanager-instances/3614556#3614556 – Isaac