Mock Location bei internem GPS

Wünsche für zukünftige Erweiterungen des GNSS-Commanders
Antworten
gnssfan
Beiträge: 16
Registriert: 24.10.2017, 17:50

Mock Location bei internem GPS

Beitrag von gnssfan » 13.11.2017, 15:45

Hallo Markus,

kann bei Verwendung des internen GPS die Location anderen Apss auch nur als Mock Location zur Verfügung gestellt werden?
Klingt inhaltlich natürlich unsinning, hat aber folgenden Hintergrund:
1. internes GPS funktioniert richtig gut mit YPGS, GpsUP, inViu, gnss Commander
2. sobald Maps den Screen hat oder praktisch alle andere üblichen Apps mit Location Zugriff wie andere Navigation, Play Store, manch andere GPS Apps wie GPS Test bricht das Signal rapide ein und die Satelliten verschwinden. Hat man ein gutes Signal unter 1. sieht man in GPS Test noch kurz die guten Signale die dann innerhalb 2-4 Sekunden zusammenbrechen. Nur bei richtig guten Empfangsverhältnissen kommt bei diesen Apps ein Fix zustande mit schlechten SNR.

Wechselt man auf eine App unter 1. baut sich das Signal wieder auf. Ein im Hintergrund Sensor aktiv lassen bei einer App unter 1. bringt leider nichts beim Wechsel auf 2.

Anscheinend gibt es mindestens zwei Möglichkeiten den GPS Sensor anzusteuern. Das wird man vermutlich für die Apps unter 2. nicht beeinflussen können bzw. den "schlechten" Zugriff (Google Play Location Service?) nicht korrigieren können. Falls du da doch was kennst, wäre super und ideal.

Daher jetzt die Idee mit gnss Commander den internen Sensor auszuwerten und den anderen Apps den Standort nur als Mock Location durchzureichen, ohne dass diese den an sich funktionierenden Sensor sabotieren.

Viele Grüße,
Martin

Mike44
Beiträge: 5
Registriert: 21.08.2017, 18:24

Re: Mock Location bei internem GPS

Beitrag von Mike44 » 13.11.2017, 18:05

Hallo Gnssfan,

ich verstehe deinen Ansatz, aber nur mal eine Gegenfrage...
Was spricht dagegen, alle Programme zu beenden und dann Maps zu verwenden?
Ich verstehe denn Sinn noch nicht, warum man soviele GPS Apps gleichzeitig verwenden will oder muss...
Kannst du mich da bitte aufklären?

PilaBlu
Site Admin
Beiträge: 94
Registriert: 21.08.2017, 16:28
Wohnort: Stuttgart
Kontaktdaten:

Re: Mock Location bei internem GPS

Beitrag von PilaBlu » 13.11.2017, 18:29

Hallo,

wenn ich auch noch kurz meinen Senf dazu geben darf:
Ich denke ich weiß warum das Verhalten so ist wie von Martin beschrieben.

Die "internen" Apps greifen in aller Regel nicht auf die NMEA Schnittstelle zu,
sondern holen die Position über die Google-Location-Service API.

Das ist auf einem Smartphone auch die DEUTLICH bessere Strategie, weil dieser
Service die Position sehr batterie-schonend liefert. (Cache,WiFi,Cell und GNSS-Chip)

Den Nachteil hat Martin in seiner Post ja beschrieben - aber um einfach mal kurz zu wissen,
wo ich denn jetzt ungefähr stehe ist die Genauigkeit allemal gut genug.

Zur ursprünglichen Frage:
Ja - man könnte auch die interne Position mocken.
Das würde aber dann genau dieses Strom-Spar Konzept aushebeln.

Gruß
Markus
C macht es einfach, sich selbst ins Bein zu schießen; C++ erschwert es, aber wenn es Dir gelingt, bläst es Dir das ganze Bein weg! [Bjarne Stroustrup]

gnssfan
Beiträge: 16
Registriert: 24.10.2017, 17:50

Re: Mock Location bei internem GPS

Beitrag von gnssfan » 13.11.2017, 19:49

Hallo zusammen,

es geht nicht darum so viele Programme gleichzeitig zu benutzen, sondern überhaupt einen Fix und eine vernünftigen Standort zu haben. Das waren nur Beispiele für Apps die jede für sich auf dem Smartphone bzgl. Standort gut gehen und jenen, die wie Maps, eben nicht gehen.

Maps wäre als alleinige App okay, aber findet selbst im Freien oft keinen Fix und wenn, dann auch gerne Mal 500-1000 m daneben. Mit den anderen Apps unter 1., die vermutlich die Location API und nicht den Google Location API verwenden geht der Fix rasch innerhalb Sekunden und auch genau innerhalb der üblichen 3-10 m.
Da nützt die batterieschonende API leider nichts, da sie auf diesem Smartphone defacto nicht funktional ist. Irgendwas ist da an der Implementierung des Google Location API im Zusammenspiel mit dem GPS Sensor des MT6753 faul. Gibt dazu andere Posts, aber leider ohne Lösung und ohne Reaktion von Google ;)

Mir wäre da die Funktion in dem Fall schon lieber, zumal das Acer Z630S wirklich Akku für 2-3 Tage hat und auch bei einer laufendem App aus 1. der Akkustand nicht wesentlich schneller abnimmt im Vergleich zu Maps allein.
Ja - man könnte auch die interne Position mocken.
Wenn sich das als Option umsetzen ließe, wäre echt supertoll!

Viele Grüße,
Martin

PilaBlu
Site Admin
Beiträge: 94
Registriert: 21.08.2017, 16:28
Wohnort: Stuttgart
Kontaktdaten:

Re: Mock Location bei internem GPS

Beitrag von PilaBlu » 13.02.2018, 08:09

Moin Martin,

ich war über 7 Wochen auf einer Reise in Australien unterwegs und bin jetzt extrem motiviert! 8-)

Ist das Thema noch relevant für dich?
Hab mir das mit dem Mocking des internen GPS nochmal angeschaut.
Das geht zwar kurz - aber nicht so richtig. (kackt nach ein paar Sekunden ab)

Ich hätte da aber ein paar alternative Ideen dazu.
Da ich es nicht testen kann, bräuchte ich dich als Tester. :mrgreen:

Ich würde dir eine kleine App senden (ohne Google-Play-Store)
und du müsstest dann jeweils den Test mit Google-Maps machen.

Viele Grüße
Markus
C macht es einfach, sich selbst ins Bein zu schießen; C++ erschwert es, aber wenn es Dir gelingt, bläst es Dir das ganze Bein weg! [Bjarne Stroustrup]

gnssfan
Beiträge: 16
Registriert: 24.10.2017, 17:50

Re: Mock Location bei internem GPS

Beitrag von gnssfan » 13.02.2018, 09:55

Hallo Markus,

das Thema ist noch aktuell und würde ich gerne testen.
Ein wenig Zusatzinfo. Es scheint irgendwas mit der Energieverwaltung zu tun zu haben. Wenn das Teil aus dem Ruhezustand kommt (display frisch an) sind z.Bsp. zunächst 13 Satsignale stark und benutzt. Die verschwinden dann schnell bis zu "kein GPS". Zugeklappt nur mit Sprachansage geht die Navigation (Maps), aber wenn Maps angezeigt wird kommt permanent "kein GPS".
Im Flugmodus funktioniert es deutlich besser als mit aktivem Netz, ist nur leider als Smartphone ohne Telefonfunktion und ohne Onlinedaten keine echte Lösung.

Bei eigenen Versuchen den GPS Provider zu mocken war immer das Problem, dass ich mir dann selbst die Events ausgelöst habe (tight loop) und keine vom internen GPS mehr bekommen habe. Ist wohl ein völlig falscher Ansatz von mir gewesen. :roll: Bin aber auch kein Android Entwickler.

Bin schon gespannt und sage schon Mal Danke!

Viele Grüße,
Martin

Antworten