Teilen zwei (oder mehr) Apps, die GPS verwenden, denselben Standortdatenstrom?

Wenn eine App GPS-Daten anfordert, aktiviert sie dann den GPS-Anruf selbst und wenn eine andere App gleichzeitig einen Anruf ausführt, führt sie einen separaten Anruf aus? Oder wenn die zweite App auf das GPS zugreift, bekommt sie die Daten, die bereits vorhanden sind (oder etwas Ähnliches, wie ein Kanal in beiden Apps geöffnet wird, an den das GPS-System alle Daten an jeden Kanal sendet, wenn Daten verfügbar sind)?

Ich frage mich, denn wenn jede App nur die Hälfte der Zeit die Kontrolle über das GPS erhält, könnte dies sicherlich zu einem weniger effektiven GPS führen. Ich vermute also, dass das iPhone in diesem Sinne gebaut wurde und die gleichen GPS-Daten für jede App verfügbar wären, aber ich weiß nicht, ob das getan wird.

Kennt jemand die interne Funktionsweise von GPS unter iOS?

Antworten (2)

Ich werde dies mit voranstellen, ich bin kein IOS-Entwickler, aber ich bin sicher, dass es genauso funktioniert wie Android und andere GPS-APIs.

Wenn eine App die GPS-APIs aufruft, ruft sie eine Abstraktion zum GPS-/Ortungssystem auf und empfängt Positionsinformationen, die das System präsentiert.

Wenn also in diesem Fall eine Anwendung das Betriebssystem nach Standortdaten fragt, verwendet das Betriebssystem eine Mischung aus GPS- und WLAN-Daten, um den Standort des Geräts zu bestimmen. Wenn gleichzeitig eine andere Anwendung Standortdaten anfordert, würde das Telefon einfach die Standortdaten verwenden, die es hat, anstatt die Funkgeräte erneut einschalten zu müssen.

Angenommen, es wird irgendwo im Betriebssystem eine Einstellung geben, wie nahe diese Anrufe sein müssen, bevor eine Neuberechnung durchgeführt wird
Wahrscheinlich nein, das Betriebssystem entscheidet über die beste Aktion und ich vermute, es wäre gut versteckt, aber ich kenne die API auch hier nicht

In iOS befinden sich die Ortungsdienste zwischen allen Standortfunkgeräten (Mobilfunkinformationen, nächstgelegenes WLAN, GPS) und den Apps und speichern die zusammengeführten Ergebnisse zwischen dem Abrufen neuer Informationen von diesen Funkgeräten mit einer vom Betriebssystem festgelegten Rate für eine angemessene Akkulaufzeit im Vergleich zu angefordert Richtigkeit. Apps "steuern" oder kommunizieren niemals direkt mit der GPS-Hardware oder dem Betriebssystemtreiber. Die Standortinformationen, die eine App erhält, sind mit einem Zeitstempel versehen, sodass eine App überprüfen kann, ob es sich um alte Informationen handelt oder nicht.