GPS Info an Android-Emulator senden

  • Antworten:6
  • OffenNicht stickyNicht beantwortet
  • Forum-Beiträge: 23

07.04.2015, 03:23:35 via Website

Aloha Community,

folgendes Problem: ich habe einen kleinen CarPC (i3-540, 3GB Ram, Win7 x86) und eine GPS-Maus, welche mir die Position via NMEA liefert.

Da ich keine Anstädnigen Navigationsprogramme mit Offline-Kartenmaterial für Windows gefunden habe, verwende ich Bluestacks und Navigon.

Das ganze funktioniert auch recht gut und zügig, nur kriege ich das GPS-Signal noch nicht durchgeschliffen.

Nach einigem Googlen bin ich darauf gestoßen, dass man sich via telnet auf localhost:5554 einloggen solle und dort dann mit 'geo nmea ' die Position ans Android senden kann.

das funktioniert nur leider nicht. Über adb komme ich jedoch auf die emulation.

Wie speise ich da nun das GPS-Signal ein?

Grüße!

Antworten
  • Forum-Beiträge: 1.904

07.04.2015, 15:02:43 via App

DDMS ist das Stichwort. http://developer.android.com/tools/debugging/ddms.html Das Ding per adb mit deinem Gerät oder emulator verbinden und dann in den Entwickler Einstellungen glaube ich falsche Standorte(eng. mock locations) aktivieren. Danach in DDMS einen Standort eingeben.

Edit: Ja weiter unten stehts http://developer.android.com/tools/debugging/ddms.html#ops-location

— geändert am 07.04.2015, 15:04:04

Wenn dir mein Beitrag gefällt, kannst dich einfach mit dem 👍 "Danke"-Button auf der Website dieses Forums bedanken. 😀

Why Java? - Because I can't C#

Antworten
  • Forum-Beiträge: 23

07.04.2015, 16:07:42 via Website

Danke für den Tipp! Leider funktioniert das ganze leider nicht. Alle Emulator-Control elemnete sind ausgegraut, funktioniert worhl nur mit dem eigenen Android-Emulator, den ich aufgrund der schlechten Performance nicht nutzen kann.

Ich habe ein wenig weitergesucht und eine App gefunden 'MockLocation'.

In dieser lassen sich zwei Punkte auf der Karte setzen, welche dann virtuell abgefahren werden. Während dessen schickt das Tool die gefakten GPS-Daten auf das Gerät. Navigon lässt sich damit veralbern.

Meine Überlegung ginge jetzt dahin, ggf eine kleine App zu schreiben, welche auf einen Port horcht, auf welchen ich die NMEA-Daten voom usb-receiver schmeisse, und dann diese Daten als FakeGPS ins Gerät schreibt.

geo fix scheint mir inzwischen doch ungeeignet, da Navigon dann nur die Position hat, trotzdem aber meckert, dass es kein GPS-Signal gäbe.

Nun fehlt mir allerdings das Wissen, wo und in welchem Format ich die GPS-Daten in der App ins Gerät einspeise.

Hat da jemand ne Idee/Codesnippet/etc?

Grüße

Antworten
  • Forum-Beiträge: 1.904

07.04.2015, 17:11:44 via App

DDMS muss funktionieren, weil das über adb läuft. Bekommst du denn manuell eine adb Verbindung hin?

Wenn dir mein Beitrag gefällt, kannst dich einfach mit dem 👍 "Danke"-Button auf der Website dieses Forums bedanken. 😀

Why Java? - Because I can't C#

Antworten
  • Forum-Beiträge: 1.904

08.04.2015, 12:08:41 via App

When DDMS starts, it connects to adb. When a device is connected, a VM monitoring service is created between adb and DDMS, which notifies DDMS when a VM on the device is started or terminated. Once a VM is running, DDMS retrieves the VM's process ID (pid), via adb, and opens a connection to the VM's debugger, through the adb daemon (adbd) on the device. DDMS can now talk to the VM using a custom wire protocol.

von der Android Developers Website

Also kann es sein, dass dein Emulator adbd nicht unterstützt(Was ich mir nicht vorstellen kann). Vielleicht kannst du das irgendwie wieder manuell überprüfen.

Hast du den offiziellen Emulator schon mal mit so einer Option (keine Ahnung wie die heißt) für Intel Prozessoren gestartet? Bei mir läuft auch nur so der Emulator schnell.
Edit: Es heißt "HAXM"

— geändert am 08.04.2015, 12:13:36

Wenn dir mein Beitrag gefällt, kannst dich einfach mit dem 👍 "Danke"-Button auf der Website dieses Forums bedanken. 😀

Why Java? - Because I can't C#

Antworten

Empfohlene Artikel