Universelle Open Source Navigation für Android: AndRoad

Eigentlich bin ich nur zufällig auf AndRoad gestoßen. Ich war auf der Suche nach einer Fahrrad-Navigationssoftware, oder zumindest Kartensoftware die mir folgendes bietet:

  1. Karte (vorzugsweise OpenStreetMaps) mit Cache und ggf. Preloading (falls man mal in einem Gebiet ohne Netz oder im Ausland unterwegs ist)
  2. Routing (GPX-Datei laden, Route anzeigen) um vorgegebene Routen abfahren bzw. folgen zu können
  3. Logging um eine Statistik über den zurückgelegten Weg anfertigen zu können
  4. Tacho und wenn möglich noch weitere Details wie Durchschnittsgeschwindigkeit, Höhe, Steigung, zurückgelegte Höhenmeter
  5. Bonus: Fahrrad-Routing (wie Naviki)

Zuerst fand ich OruxMaps. Super Teil! Hab die Software auch schon einige Male genutzt. Für mich als Fahrradfahrer optimal. Hat alles was ich brauche, zumindest sofern ich auf vorher geplanten Routen fahre. Denn das was fehlt ist Punkt 5. Und das kann sehr ärgerlich sein, wenn man mitten im Wald steckt und den fahrradfreundlichsten Weg zu einem bestimmten Punkt suchen möchte. Also habe ich mich etwas über OruxMaps informiert, ob es vielleicht möglich wäre die fehlende Funktionalität in irgendeiner Form zu erweitern. Leider ist OruxMaps nicht Open Source und das Vorhaben daher nur über die Entwickler selber möglich. Plan also verworfen.

Als nächste stieß ich auf AndNav2. Sah mir auf den ersten Blick auch gar nicht schlecht aus. Bot mir immerhin die Punkte 1, 3 und 5. Ein richtiges Navi soll ja auch erstmal nicht verkehrt sein, vor allem wenn es explizites Fahrrad-Routing anbietet. Leider waren die Kommentare im Android Market alles andere als positiv: instabile Software, schlechtes Routing und zu allem Überfluss keine Updates mehr seit sehr langer Zeit. Kein gutes Zeichen. Doch ein bisschen Nachforschung brachte hervor, dass AndNav2 von seinem Author als Open Source freigegeben wurde. Weil dieser allerdings scheinbar seit einiger Zeit inaktiv ist, haben andere Mitentwickler einen Fork erstellt und diesen teilweise weiterentwickelt. Dieser Fork heißt nun AndRoad und ist um einige Funktionalitäten im Gegensatz zu der letzten „stabilen“ AndNav2-Version erweitert. Leider ergaben meine ersten Tests dieser erweiterten Version, dass sich die Software in einem absolut miesen Zustand befindet, obwohl sie von der Architektur her sehr gut durchdacht und sauber entwickelt ist. Perfekt um die fehlende Funktionalität hinzuzufügen.

Also zuerst mal einige Fehler, vor Allem im grafischen Bereich behoben. Darunter fielen viele Fehler in den Layouts, sowie im Head-Up-Display des Routings. Soweit läuft die Software nun erstmal recht stabil. Einige Probleme treten immer mal wieder auf, wenn man den Bildschirm dreht. Werde ich mir wohl irgendwann mal anschauen müssen. Eine Schwierigkeit hierbei ist, dass die Kartenanzeige selber auf einer externen Bibliothek namens osmdroid aufbaut. Sofern der Fehler in dieser Bibliothek liegt, dann müsste sich der Entwickler dieser Bibliothek darum kümmern. Sollte aber auch kein größeres Problem darstellen, da diese Bibliothek ebenfalls Open Source ist.

Um das Routing, vor allem im Bereich Fahrrad, zu verbessern, wäre es optimal das Routing von Naviki verwenden zu können. Theoretisch sollte dies wohl möglich sein, denn bisher verwendet AndRoad sowieso nur Online-Routing. Dabei wird eine Route vom Server angefragt und dieser gibt in XML-Form die detaillierten Routen-Anweisungen zurück. Naviki selber macht das intern auch, allerdings ohne Anweisungen. Dabei wird nur eine „blanke“ Route zurückgegeben. Damit könnte AndRoad derzeit erstmal nix anfangen. Wobei ich diese Funktionalität auch gerne noch erweitern würde, um auch „einfache“ Routen, also GPX-Dateien verwenden zu können, die keine Routing-Anweisungen beinhalten.

Es gibt also noch viel zu tun … ich werde weiter berichten. Außerdem könnt ihr bei Github beobachten was sich in meinem Fork von AndRoad so tut.

Autor:
Datum: Mittwoch, 16. März 2011 22:16
Trackback: Trackback-URL Themengebiet: AndRoad, Android

Feed zum Beitrag: RSS 2.0 Diesen Artikel kommentieren.
Pingen ist momentan nicht möglich.

2 Kommentare

  1. 1

    Hallo,

    ich bin gespannt. Allerdings habe ich mich beim Lesen gefragt, warum nicht eher Navit (das wohl weiter entwickelt ist als AndNav je war) nicht um diese Funktionalität erweitert wird.
    Aber Vielfalt in der OSS-Szene hat noch nie geschadet. Good luck!

  2. 2

    Ich habe ein N800 als Fahrrad-Computer. Darauf benutze ich maemo-mapper für die OSM Kartenanzeige, Tracking und Co.
    Es hat aber kein Routing.
    Dafür habe ich Navit gehakt. Navit kann eine Route prima berechnen und dient dann als Navi. Über die Konfigurationsdatei kann man sehr gut Scores so vergeben das 1a Fahrrad-touren dabei raus kommen.
    Nur was ich wollte ich lediglich eine Strecke routen lassen und diese als gpx route in maemo-mapper laden.
    Dafür habe ich in Navit das virtuelle abfahren der Strecke genutzt. Allerdings machte es das in Echtzeit, wtf. Das konnte man nicht über eine Konfiguration beinflussen, also habe ich dem virtuellen Fahrzeug 1000km/h verpasst.
    Es sieht lustig aus und am Ende kommt eine gpx Datei raus.

    War nicht viel Arbeit aber erstmal eine Lösung.
    Gerne hätte ich die Routing-Engine von navit in maemo-mapper integriert. Aber mir fehlt die Zeit dazu.

    Werde AndRoad auch mal ausprobieren!

Kommentar abgeben