如果我初始化追加用戶位置的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