Freigeben über


Übersicht über das Beispiel zum Reise-Optimierer von Bing Maps

Dieses Dokument beschreibt die grundlegenden Eigenschaften des Reise-Optimierers von Bing Maps, darunter seine Entwicklung, Strukturierung und Erstellung.

Hinweis

Den Beispielcode zu diesem Dokument finden Sie im Abschnitt über das Codebeispiel für den Reise-Optimierer von Bing Maps.

In diesem Artikel

  • Erstellen der Visual Studio-Projekte

  • Erstellen, Bereitstellen und Ausführen des Beispiels

  • Anwendungsworkflow

  • Nächste Schritte

Erstellen der Visual Studio-Projekte in Visual Studio

Wenn Sie das Beispiel heruntergeladen und extrahiert haben, können Sie die TripOptimizer.sln-Projektmappendatei in Visual Studio öffnen und haben den Code vorliegen. Sie können die Quelle für das Codebeispiel für den Reise-Optimierer von Bing Maps auf der MSDN-Beispielgalerieseite auch anzeigen, indem Sie die Registerkarte Code durchsuchen auswählen.

Beim Erstellen der Visual Studio-Projekte für den Reise-Optimierer von Bing Maps haben wir die JavaScript-Vorlage Leere Anwendung verwendet, um das Hauptanwendungsprojekt zu erstellen, und die Visual C++-Vorlage Windows-Runtime-Komponente, um die C++-Klassenbibliothek zu erstellen. Das JavaScript-Projekt verweist auf das C++-Projekt. Im Dokument Erstellen von Windows-Runtime-Komponenten in C++ wird erläutert, wie ein Projektverweis eingerichtet wird.

Für das JavaScript-Projekt stellt die Vorlage Leere Anwendung die grundlegende Funktionalität bereit, die erforderlich ist, um eine Windows Store-App auszuführen. Verwenden Sie diese Vorlage, um eine leere Anwendung zu erstellen. Visual Studio enthält zusätzliche Vorlagen, mit denen die ursprüngliche Funktionalität erweitert werden kann. Der Reise-Optimierer von Bing Maps verwendet die Standarddateien aus der Vorlage Leere Anwendung und fügt weitere Bild- und Codedateien hinzu.

Eine wichtige Projekteinstellung in der Vorlage WinRT-Klassenbibliothek ist die Option /ZW. Sie ermöglicht dem Programm, die Windows-Runtime-Spracherweiterungen zu verwenden.

Warnung

Die /ZW-Option ist nicht mit Optionen wie /clr kompatibel. Dies bedeutet, dass Sie nicht .NET Framework und Windows-Runtime aus demselben Visual C++-Projekt verwenden können.

Jede App im Windows Store im Windows Store wird als Anwendungspaket bereitgestellt. Ein Anwendungspaket enthält ein Paketmanifest, das Informationen über die App bereitstellt. Beispielsweise können Sie die Funktionen angeben, die den Zugriff auf geschützte Systemressourcen oder Benutzerdaten definieren. Wenn Sie feststellen, dass die App bestimmte Funktionen erfordert, verwenden Sie das Paketmanifest, um sie zu deklarieren. Der Reise-Optimierer von Bing Maps gibt Internet (Client) an, um den Zugriff der App auf die Webdienste von Bing Maps zu aktivieren. Weitere Informationen zu Anwendungspaketen und Funktionen finden Sie unter App packages and deployment.

Weitere Informationen zu Funktionen und Komponenten, die in der integrierten Entwicklungsumgebung von Visual Studio (IDE) für JavaScript-, C++ und .NET-Projekte verfügbar sind, finden Sie unter Develop Windows Store apps using Visual Studio.

[Nach oben]

Erstellen, Bereitstellen und Ausführen des Beispiels

Gehen Sie beim Erstellen eines Windows Store-App-Projekts genau so vor, wie bei einem Standardprojekt (Wählen Sie in der Menüleiste die Option Erstellen und dann Projektmappe erstellen.) Mit dem Buildschritt wird der Code kompiliert und zur Verwendung als App im Windows Store gepackt.

Nachdem Sie das Projekt erstellt haben, müssen Sie es bereitstellen (Wählen Sie in der Menüleiste die Option Erstellen und dann Projektmappe bereitstellen.) Visual Studio stellt das Projekt auch bereit, wenn Sie die App im Debugger ausführen.

Nachdem Sie das Projekt bereitgestellt haben, wählen Sie die Kachel des Reise-Optimierers von Bing Maps aus, um die App auszuführen. Sie können auch auf der Menüleiste von Visual Studio auf Debuggen und anschließend auf Debuggen starten klicken. Stellen Sie sicher, dass das Startprojekt TripOptimizerWebApp ist.

Hinweis

Zur Ausführung dieses Beispielcodes ist ein Bing Maps-Schlüssel erforderlich. Informationen darüber, wie Sie einen Bing Maps-Schlüssel erhalten, finden Sie unter Getting a Bing Maps Key.

[Nach oben]

Anwendungsworkflow

Nachfolgend wird der Workflow der App beschrieben.

  1. Geben Sie bis zu 25 Standorte für die Reise ein. Der erste Eintrag gibt sowohl den Anfangs- als auch den Endstandort an.

    Tipp

    Sie können Park-Demo oder Zustellungs-Demo auswählen, um den Standortbereich mit vordefinierten Werten aufzufüllen.

  2. Wählen Sie die Reiseart (das heiß, ob Sie fahren oder gehen), die Entfernungseinheit (Meilen oder Kilometer) und die Optimierungsmethode aus (das heißt, ob Sie die Entfernung minimieren, die Zeit minimieren oder Staus vermeiden möchten).

  3. Wenn Sie möchten, legen Sie die Eingaben für den Optimierungsalgorithmus fest und geben Sie an, ob die parallele Berechnung verwendet werden soll. Die parallele Berechnung ist standardmäßig aktiviert.

    Hinweis

    Der Abschnitt Erweiterte Optionen ist als Lerntool für Entwickler enthalten. Diese Optionen sind keine Bestandteile einer App.

  4. Wählen Sie Routenplan abrufen, um den Prozess zu starten. Der JavaScript-Teil der App übergibt die Standorte und Optionen an die Windows-Runtime-Komponente in C++. Die C++-Komponente führt folgende Schritte aus:

    1. Mithilfe der Bing Maps-REST-Dienste (Representational State Transfer) werden Breiten- und Längengrade der einzelnen Standorte abgerufen. Bei der Antwort schließt Bing Maps alle Möglichkeiten ein, die mit der Standortzeichenfolge übereinstimmen.

    2. Für alle Standorte, für die es mehr als eine Möglichkeit gibt, werden alle Möglichkeiten auf der Benutzeroberfläche angezeigt und die Komponente kehrt zu Schritt 1 zurück.

    3. Mithilfe der Bing Maps-REST-Dienste (Representational State Transfer) wird die Entfernung (entweder per Autostrecke oder Fußweg) zwischen den einzelnen Standorten abgerufen. In diesem Schritt werden die Breitengrad- und Längengradwerte verwendet, die in Schritt A abgerufen wurden.

    4. Die optimierte Route für alle Standorte wird berechnet und an den JavaScript-Teil der App übergeben.

  5. Der HTML-/JavaScript-Teil zeigt einen detaillierten Routenplan an und verwendet das Bing Maps AJAX-Steuerelement, um die optimierte Route darzustellen.

  6. Sie können mit der entsprechenden Karte interagieren. Wenn Sie einen Schritt oder einen Standort aus dem Routenplan auswählen, bewegt sich das AJAX-Steuerelement zu diesem Schritt oder Standort und fügt der Karte eine Stecknadel hinzu.

Die folgende Abbildung zeigt eine Übersicht dieses Workflows.

Anwendungsworkflow

Die C++-Komponente verwendet die Bing Maps-REST-Dienste in zwei Phasen. Die erste Phase hilft dem Benutzer, zu überprüfen, dass Bing Maps die richtigen Standorte enthält. Wenn Sie beispielsweise "Frankfurt" angeben, gibt Bing Maps "Frankfurt am Main, Frankfurt, HE, Deutschland", "Frankfurt (Oder), BB, Deutschland" und "Frankfurt, BY, Deutschland" als mögliche Standorte zurück. Wenn Mehrdeutigkeiten bereits am Anfang des Prozesses behoben werden, kann die zweite Phase, in der die Entfernung zwischen den einzelnen Punkten abgerufen wird, ausgeführt werden, ohne dass mehrdeutige Standorte auftreten.

Hinweis

Die Kommunikation mit den Bing Maps-REST-Diensten kann auch im JavaScript-Teil der App ausgeführt werden. Sie wurde jedoch zur C++-Komponente hinzugefügt, da die Kommunikation mit einer REST-Schnittstelle und die Analyse der XML-Antwort von C++ veranschaulicht werden sollten.

[Nach oben]

Nächste Schritte

Lesen Sie Verwenden von JavaScript im Beispiel zum Reise-Optimierer von Bing Maps, um Informationen darüber zu erhalten, wie JavaScript in der App des Reise-Optimierers von Bing Maps verwendet wird.

[Nach oben]