Ich habe mindestens zwei Controller in meiner App, die derzeit ihre eigene CLLocationManager-Instanz verwenden. Ich bin jedoch neugierig, wenn die Verwendung mehrerer Instanzen tatsächlich eine zusätzliche Belastung für das Telefon bedeutet - über den zusätzlichen Speicher für die verschiedenen Instanzen hinaus.Gibt es Leistungseinbußen bei der Verwendung mehrerer Instanzen von CLLocationManager
Schaltet das iPhone die GPS-Hardware mehrmals an oder verwendet es eine Art Versand, so dass die Hardware abstrahiert und nur an alle Empfänger weitergeleitet wird? Ich wollte gerade meine eigene Abstraktionsschicht schreiben, um mehrere Beobachter zu betreuen, aber ich wollte überprüfen, ob es irgendwelche Kenntnisse gab, die nahelegen, dass es nicht notwendig ist.
"Das Betriebssystem konfiguriert die GPS/Funkgeräte für minimalen Stromverbrauch basierend auf den kombinierten Anforderungen aller CLLocationManagers." Wo steht es auf den Dokumenten? – vfn
"Stellen Sie sicher, dass die Standortaktualisierungen für alle CLLocationManager-Instanzen gestoppt werden, wenn Ihre App sie nicht mehr benötigt (dh in applicationWillResignActive :), damit das GPS ausgeschaltet werden kann, um Batterie zu sparen." Das GPS wird nur dann aktiv, wenn Sie Ihre App so konfigurieren, dass Updates im Hintergrund empfangen werden (nur iOS4). Andernfalls wird das GPS deaktiviert, wenn keine andere App nach dem Standort fragt. Es empfiehlt sich, den Standortmanager anzuhalten, sobald Sie keine GPS-Informationen benötigen, und nicht nur auf applicationWillResignActive :. Ändern Sie das "d. H." zu "z. B.", und Sie werden es beheben. – vfn
irgendwelche tatsächlichen Referenzen oder reale Beispiele, um dies zu unterstützen oder ist dies nur Ihr Verständnis? –