如果我初始化追加用戶位置的CLLocaitonManager實例,它會增加負載嗎?或者我應該在類之間使用一個CLLocaitonManager實例?許多CLLocationManager實例
回答
創建太多CLLocaitonManager
或增加核心位置服務的更新間隔會嚴重損耗電池。因此不建議創建太多實例。不要看到這個需要。
一個好的做法是在viewController中初始化一個CLLocaitonManager
。如果移動到另一個viewController,則在當前的更新stopUpdates在新的viewController中創建一個新的管理器。這是一種模式。
另一種模式是在應用程序代理&中創建一個CLLocaitonManager
,使其可在整個應用程序中使用。這就像一個全局變量。但通常避免全局聲明這個變量,因爲它不斷消耗你的電池壽命。
所以基本上如果你所有的類只是一個viewController的一部分,那麼只創建一個共享位置更新的CLLocaitonManager
&。如果沒有,則爲每個viewController創建一個。
你有這方面的證據嗎?我總是用CLLocationManager創建一個單例,但正如我所做的那樣,我總是爲蘋果設計API的方式感到震驚,假設你將擁有多個CLLocation管理器。 (例如,doUpdateToLocation指定了CLLocationManager) –
位置服務要求給定設備上存在特定的硬件。所以多數民衆贊成爲什麼,它的多少CLLocationManager實例創建無關緊要。通常避免全局聲明這個變量,因爲它不斷消耗你的電池壽命。每當需要查找用戶位置時,另一個明智的停止和開始。
- 1. CLLocationManager的多個實例
- 2. CLLocationManager的額外實例?
- 3. 實例化許多類
- 4. 使用多個CLLocationManager實例有沒有任何性能損失
- 5. 許多實例變量或散列與許多鍵?
- 6. 從Redis讀取的許多Logstash實例
- 7. AppEngine實例的許多自定義域
- 8. 許多實例的EC2 npm更新
- 9. Rails,一個模型的許多實例
- 10. 爲什麼許多nHibernate示例代碼實例包含Castle dll?
- 11. 每個應用程序有多個CLLocationManager實例。他們互相混淆了嗎?
- 12. 在ManyToOne關係的許多方面創建實體的實例
- 13. LINQ與許多實體許多relatioship
- 14. 許多到許多實體框架
- 15. 涉及CLLocationManager的類實現
- 16. 在哪裏實施CLLocationManager
- 17. 如何在應用程序中創建一個CLLocationManager實例?
- 18. 在AppDelegate中使用CLLocationManager實例化Singleton類didFinishLaunchingWithOptions
- 19. CLLocationManager返回多個座標
- 20. 許多CUDA示例失敗
- 21. 多iDempiere實例
- 22. 多個實例
- 23. 多個實例
- 24. 多個實例
- 25. 多個實例
- 26. 多個實例
- 27. 目標C - CLLocationManager找出何時點擊「允許」或「不允許」
- 28. CLLocationManager
- 29. AWS EC2實例:啓動多個實例
- 30. 如何讓抽象類「DocumentBuilderFactory」允許實例化新實例
你能不能提出你的問題? –
另請參閱:http://stackoverflow.com/questions/3614511/is-there-any-performance-penalty-for-using-multiple-cllocationmanager-instances/3614556#3614556 – Isaac