1. Nimm jetzt an unserem 2. ADVENT-Gewinnspiel teil - Alle Informationen findest Du hier!

Google Maps (Navigation) aus externer Webapplikation ansteuern

Dieses Thema im Forum "Android App Entwicklung" wurde erstellt von Schranz0r_23, 20.12.2010.

  1. Schranz0r_23, 20.12.2010 #1
    Schranz0r_23

    Schranz0r_23 Threadstarter Neuer Benutzer

    Beiträge:
    14
    Erhaltene Danke:
    0
    Registriert seit:
    20.12.2010
    Hallo Allerseits,

    ich hoffe ich bin hier im richtigen Unterforum gelandet.

    Also es geht um folgendes: Wir entwickeln gerade eine Webapplikation für einen Kunden. Die Mitarbeiter des Kunden nutzen das "Samsung Galaxy Tab (GT-P1000)" um Unterwegs Termine und Kontakte zu verwalten. Jetzt hätte der Kunde gerne die Funktionalität, dass er aus unserer Webanwendung heraus das interne Navigationsgerät per Knopfdruck starten kann. Also er drückt im Browser des Galaxy Tabs auf "Navigation starten", dann öffnet sich die Google-Maps Geschichte des Gerätes und die Navigation beginnt. Die Start und Zieldaten (Anschrift, PLZ, Ort) sollen aus unserer Anwendung an das Navi übergeben werden.

    Dazu habe ich mal im Anhang zwei Bilder aus unserer Anwendung heraus beigelegt.

    Listenansicht der Termine: http://www.redtree-space.de/anhang_01.jpg

    Klick auf Route planen: http://www.redtree-space.de/anhang_02.jpg

    Links vom Button (Grafik 2) soll dann ein neuer Button dazu: "Navigation starten"

    Jetzt würd ich allerdings erstmal ganz gerne wisse, ob das überhaupt möglich ist bevor ich nach dem wie frage.

    Vielen Dank!
     
  2. Lilithian, 20.12.2010 #2
    Lilithian

    Lilithian Android-Hilfe.de Mitglied

    Beiträge:
    69
    Erhaltene Danke:
    23
    Registriert seit:
    26.10.2010
    Die einfache Google-Navigation kannst du einfach über einen Intent starten.

    Code:
    Intent intent = new Intent(Intent.ACTION_VIEW, Uri
                            .parse("google.navigation:q=" + latitude + ","
                                    + longitude));
                    startActivity(intent);
     
  3. Schranz0r_23, 20.12.2010 #3
    Schranz0r_23

    Schranz0r_23 Threadstarter Neuer Benutzer

    Beiträge:
    14
    Erhaltene Danke:
    0
    Registriert seit:
    20.12.2010
    Hi Lilithian,

    danke für die schnelle Antwort!

    Hatte erst gedacht, dass wäre ein Javascript Objekt
    aber wenn ich das richtig sehe, ist dieses Intent ein Java Objekt oder?
    Hatte ich hier gefunden: Intent | Android Developers

    Wie kann ich das nun konkret anwenden? Lng und Lat kann ich über die Google API berechnen.
     
  4. Lilithian, 21.12.2010 #4
    Lilithian

    Lilithian Android-Hilfe.de Mitglied

    Beiträge:
    69
    Erhaltene Danke:
    23
    Registriert seit:
    26.10.2010
    Ja, das ist eine ganze normale Android-Klasse.
    Mit dem Code den ich vorher gepostet legst du einen Intent an, mit startActivity(intent) wird dieser Intent gestartet, in diesem Fall also die Navigation.
    Wenn ich richtig verstanden habe, was du machen möchtest (eine Webanwendung) könntest du eine Android App entwickeln in der eine WebView liegt, die die Webseite anzeigt. Diese WebView könnte dann diese Intents starten. Glaub nicht, dass man Intents aus einer Webseite heraus starten kann, weiß es aber nicht. :o
     
  5. Schranz0r_23, 21.12.2010 #5
    Schranz0r_23

    Schranz0r_23 Threadstarter Neuer Benutzer

    Beiträge:
    14
    Erhaltene Danke:
    0
    Registriert seit:
    20.12.2010
    Aaaahaaaa! :)

    Jau haste mich richtig verstanden.

    Mit WebView meinst Du einfach nur eine Webbrowser emulation? Muss ich dazu dieses Webkit verwenden?

    Jetzt kommt nur der Haken. Ich hab noch nicht eine Zeile Java Code in den letzten Jahren geschrieben. Hatte mich aber aus langeweile gestern mal durch die Tuts gezappt.

    Was schätzt Du, wie aufwendig das ist?
     
  6. Lilithian, 21.12.2010 #6
    Lilithian

    Lilithian Android-Hilfe.de Mitglied

    Beiträge:
    69
    Erhaltene Danke:
    23
    Registriert seit:
    26.10.2010
    Hab sowas selbst noch nicht versucht, aber du scheinst einfach der WebView dann einen JavascriptClient mitgeben zu können und dann über JavaScript in der Webseite die Androidfunktionen aufrufen (also den Intent für die Navigation).

    Building Web Apps in WebView | Android Developers
    Unter "Binding JavaScript code to Android code" steht beschrieben was ich meine und auf der Seite findest du auch, wie man allgemein eine WebView anlegt.
     
  7. Schranz0r_23, 21.12.2010 #7
    Schranz0r_23

    Schranz0r_23 Threadstarter Neuer Benutzer

    Beiträge:
    14
    Erhaltene Danke:
    0
    Registriert seit:
    20.12.2010
    Sauber, jetzt noch fix die Basics für Android reinprügeln und die Sache dürfte klappen (Hoffe ich zumindest). Denke ich hab erstmal alles zusammen um die Sache angehen zu können. Werde das aber von der Projektplanung her wahrscheinlich erst in spätestens einer Woche angehen können.

    Ich meld mich dann nochmal, wenn es irgendwo nich will, so wie ich das gerne hätte.

    Danke!

    Beste Grüße
     
  8. Schranz0r_23, 17.02.2011 #8
    Schranz0r_23

    Schranz0r_23 Threadstarter Neuer Benutzer

    Beiträge:
    14
    Erhaltene Danke:
    0
    Registriert seit:
    20.12.2010
    Hallo!

    Ich habe es jetzt geschafft, mein Vorhaben in die Tat umzusetzen. Hat alles original so geklappt, wie wir uns das ausgedacht hatten..

    - Webclient Emulation
    - Javascript Anbindung
    - Internes Navi mit dem jeweiligen Intent starten.

    Toll! Android ist ja echt ne feine Sache und so super einfach...

    Jetzt wollte ich mal nachfragen (Kundenwunsch), ob es möglich ist, mehrere Koordinaten an die interne Google-Navigation zu übergeben. So dass diese als Wegpunkte bei der Navigation berücksichtigt werden.

    Erneut Danke!
     

Diese Seite empfehlen