Ratgeber: "App-Entwicklung"

Eigene Windows Phone Apps erstellen

Das mobile Betriebssystem Windows Phone 7.5 ist noch nicht allzu lange auf dem Markt, da steht bereits Windows Phone 8 vor der Tür. Die App-Entwicklung wird dadurch noch attraktiver, zumal die Entwicklungsumgebung an Komfort nichts zu wünschen übrig lässt und darüber hinaus kostenfrei erhältlich ist.

Eigene Windows Phone Apps erstellen

© Hersteller/Archiv

Eigene Windows Phone Apps erstellen

Es gibt vor allem zwei Gründe für die positive Tendenz bei der App-Entwicklung: Während das Vorgängerbetriebssystem Windows Mobile einseitig auf Business-Kunden ausgerichtet war, hat Windows Phone beide Klientel im Auge: den Geschäfts- wie den Consumer-Kunden.

Strenge Vorgaben für besserer Kompatibilität

Wegen der strengen Vorgaben von Microsoft für die Hersteller (das Betriebssystem darf herstellerseitig praktisch nicht verändert werden), kann man sich nunmehr darauf verlassen, dass eine Applikation, die für Windows Phone entwickelt wurde, tatsächlich auf allen Geräten dieses Betriebssystems läuft.

Außerdem wissen Sie bei der Entwicklung einer Windows-Phone-Applikation ganz genau, welche Funktionen Sie auf den Geräten voraussetzen können und in welcher Weise Sie im Programmcode darauf zugreifen.

Sogar die Bildschirmauflösung (800 x 480) wurde vereinheitlicht, sodass ein aufwändiges Testen hinsichtlich des Designs von Benutzeroberflächen entfällt. Selbst wenn Sie sich also zu den weniger versierten Programmierern rechnen, sollte Sie das auf keinen Fall davon abhalten, denn das Entwickeln von eigenen Apps mit dem Windows Phone SDK ist so einfach, wie noch nie, und Sie können es kostenlos ausprobieren.

Eine eigene App erstellen: So geht's

software, tools, programmierung

© Hersteller/Archiv

Visual-Studio-Dialog Neues Projekt: Alle Vorlagen für Windows-Phone-Projekte finden Sie für die gewählte Programmiersprache unter Silverlight for Windows Phone.

Eine Reise beginnt immer mit dem ersten Schritt, und in der Programmierung besteht dieser Schritt in der Regel aus einem Hallo-Welt-Projekt. Das ist bei Windows-Phone-Applikationen nicht anders. An einem einfachen Beispiel lässt sich deren Aufbau am besten erklären. Starten Sie also zunächst Visual Studio bzw. Visual Studio 2010 Express for Windows Phone und rufen Sie den Dialog zum Anlegen eines neuen Projekts auf (Datei/Neu/Projekt).

Selektieren Sie im linken Bereich Silverlight for Windows Phone und wählen Sie anschließend die Vorlage Windows Phone-Anwendung aus. Geben Sie dem Projekt einen Namen. Danach werden Sie gefragt, für welche Zielplattform (Windows Phone OS 7.1 oder Windows Phone OS 7.0) Sie entwickeln wollen. Natürlich entscheiden Sie sich für die voreingestellte aktuelle Version 7.1, die zudem abwärtskompatibel ist.

Nicht von den Versionsnummer verwirren lassen

Wundern Sie sich nicht weiter über die Versionsnummer. Es ist nämlich so, dass das aktuelle Phone-Betriebssystem zwei besitzt: Die, mit der Windows Phone vermarktet wird, lautet 7.5, die interne Versionsnummer lautet jedoch wie die des SDK 7.1. Mit Windows Phone OS 7.1 ist also Windows Phone 7.5 gemeint.

Visual Studio erstellt nun das Projekt und nach kurzer Wartezeit sehen Sie die erste Seite Ihrer Applikation (Datei MainPage.xaml). Neben dem Design-Bereich, der die GUI der Anwendung in einem WYSIWYG-Editor zeigt, erscheint der Editor für den XAML-Code. Änderungen am XAML-Code werden sofort im Design-Bereich übernommen und umgekehrt.

Das XAML-Wurzelelement bildet phone:Phone ApplicationPage. Auffallen wird Ihnen vermutlich die Vielzahl der folgenden Attribute: Die xmlns-Attribute machen Namensräume bekannt. Namensräume, die mit clr-namespace beginnen, sind im .NET Framework definiert, bei den anderen handelt es sich um spezielle Namensräume von Silverlight. Mit den Bezeichnungen hinter xmlns: verweisen Sie im Code der Seite auf den entsprechenden Namensraum.

Erster Attribut "Class"

Das erste Attribut Class verweist auf die Klasse, die den zugehörigen Programmcode enthält. Mit dem Attribut SupportedOrientations legen Sie die möglichen Seitenausrichtungen (Werte: Landscape, Portrait oder PortraitOrLandscape) und mit dem Attribut Orientation diejenige Seitenausrichtung fest, die standardmäßig verwendet werden soll. Wenn Sie nicht möchten, dass im oberen Bereich der Seite Systeminformationen angezeigt werden, setzen Sie shell:SystemTray.IsVisible auf False.

Das Wurzelelement beinhaltet ein umfassendes Grid mit dem Namen LayoutRoot und weitere darin geschachtelte Layout-Elemente, in denen die Steuerelemente der Seite definiert sind. Mit dem Element Grid.RowDefinitions legen Sie die Anzahl der Zeilen und mit dem Height-Attribut deren Höhe fest.

<Grid.RowDefinitions><RowDefinition Height="Auto"/><RowDefinition Height="*"/></Grid.RowDefinitions>

Nach obiger Definition besitzt die Seite zwei Zeilen, von denen die erste den Platz einnimmt, den ihr Inhalt beansprucht (Wert Auto) und für die zweite der restliche Platz zur Verfügung steht (Wert *). Der Wert für das Attribut Grid.Row bestimmt für ein Element, in welcher Zeile des übergeordneten Grids es angeordnet werden soll - der Wert 0 steht für die erste Zeile.

Blenden Sie gegebenenfalls am linken Fensterrand die Toolbox ein. Dort finden Sie alle Steuerelemente, die für Windows-Phone-Projekte zur Verfügung stehen. Um nun auf der Seite einen Text anzuzeigen, ziehen Sie ein TextBlock-Steuerelement auf die Design-Oberfläche. Visual Studio fügt daraufhin dem XAML-Code im unteren Grid ein <TextBlock>-Tag hinzu.

<TextBlock Height="30" Horizontal
Alignment="Left" Margin="177,199,0,0"Name="textBlock1" Text="TextBlock"VerticalAlignment="Top" />

Sie haben jetzt die Wahl, wo Sie die Eigenschaften des TextBlocks anpassen: im Eigenschaftenfenster, direkt im XAML-Code oder für gröbere Anpassungen zunächst im Designer. Ändern Sie zunächst die Text-Eigenschaft zu Ein erster Test, entweder, indem Sie im <TextBlock>-Tag für das entsprechende Attribut Text="Ein erster Test" notieren oder Sie schreiben den String im Eigenschaftenfenster in die Spalte neben Text.

Bringen Sie anschließend den TextBlock auf eine passende Größe, indem Sie ihn im Designer an den Rändern auseinanderziehen. Die Eigenschaften Width, Height und Margin passen sich im XAML-Code automatisch an. Schriftgröße und Schriftstil ändern Sie am einfachsten im Eigenschaftenfenster. In der Kategorie-Ansicht erweitern Sie dazu den Abschnitt Text.

Test im Emulator

software, tools, programmierung

© Hersteller/Archiv

Windows Phone Emulator: Videos lassen sich dank des Steuerelements MediaElement im Handumdrehen einfügen und abspielen.

Wenn Sie fertig sind, drücken Sie F5, um die Applikation zu starten. Es erscheint der Windows Phone Emulator. Ihre App sehen Sie nach wenigen Sekunden auf dem visuellen Smartphone. Im Übrigen können Sie sich auf dem Emulator wie auf einem richtigen Mobiltelefon frei bewegen. Mit der Windows-Taste gelangen Sie zur Startseite und um eine App an dieser dauerhaft anzuheften, klicken Sie diese in der Programmliste an, halten dabei die Maustaste gedrückt und wählen im erscheinenden Menü die Option Auf Startseite.

Sofern Ihr Computer mit dem Internet verbunden ist, können Sie auf dem Emulator auch im Internet surfen. Um eine Anwendung - und damit auch den Emulator - zu beenden, klicken Sie ganz oben in der kleinen Symbolleiste. Diese erscheint neben dem Smartphone, wenn Sie die Maus über die entsprechende Stelle auf das Kreuz-Symbol bewegen. Alternativ wählen Sie in Visual Studio Debuggen/Debugging beenden.

Wenn Sie im Designer den TextBlock wieder löschen, verschwindet das <TextBlock>-Tag auch sofort aus dem XAML-Code. Analog verhält es sich, wenn Sie dort die entsprechende Zeile löschen. Die Dateien der resultierenden App sind übrigens in einem XAP-Archiv verpackt. Windows-Phone-Applikationen werden so auf den Emulator übertragen und auch auf dem Marketplace ausschließlich in dieser Form angeboten. XAP-Archive können Sie mit jedem ZIP-Programm öffnen oder sich den Inhalt im Windows-Explorer direkt ansehen, wenn Sie die Endung .zip anhängen

Videos abspielen mit MediaElement

software, tools, programmierung

© Hersteller/Archiv

Mit ein wenig Übung und Kenntnis der Entwicklungsumgebungen findet sich vielleicht auch Ihre App bald im Marketplace von Windows Phone.

Besonders einfach zu handhaben und effektiv ist das MediaElement. Es gibt Medieninhalte wieder. Eine Übersicht der unterstützten Formate finden Sie auf der Microsoftseite . Ein kleines Beispiel: Ziehen Sie ein MediaElement aus der Toolbox auf die Design-Oberfläche und passen Sie es in der Größe an.

Fügen Sie das Video, das Sie verwenden wollen, Ihrem Projekt hinzu. Legen Sie die Videodatei am besten in das Ausgabeverzeichnis (Bin\Debug) und wählen Sie anschließend den Befehl Projekt/Vorhandenes Element hinzufügen. Setzen Sie im Eigenschaftenfenster den Buildvorgang für die Videodatei auf Resource.

Fügen Sie im XAML-Code dem MediaElement-Tag das Attribut Source mit Angabe der Videodatei hinzu, z.B. Source="testvideo.wmv". Wenn das Video nicht im Ausgabeverzeichnis liegt, müssen Sie den Pfad mit angeben. Platzieren Sie oberhalb des MediaElement-Steuerelements ein Button-Steuerelement. Weisen Sie der Content-Eigenschaft des Buttons den String "Anhalten" zu.

Passen Sie das Steuerelement in der Größe an, sodass es genügend Platz für die etwas längere Zeichenfolge Fortsetzen bietet. Klicken Sie nun das Button-Steuerelement doppelt an, um die zugehörige Click-Ereignismethode zu generieren. Sie befinden sich jetzt in der Code-Datei MainPage.xaml.cs. In der XAML-Datei (MainPage.xaml) wurde das <Button>-Tag automatisch um das Attribut Click="button1_Click" ergänzt:

<Button Content="Anhalten" Height="72"
HorizontalAlignment="Left" Margin="140,184,0,0" Name="button1" VerticalAlignment="Top" Width="160" Click="button1_Click" />

Schreiben Sie folgenden C#-Code in das Grundgerüst der button1_Click()-Methode (Datei MainPage.xaml.cs):

if (button1.Content.ToString() == "An
halten")
{ mediaElement1.Pause();
button1.Content = "Fortsetzen"; }
else { mediaElement1.Play();
button1.Content = "Anhalten"; }

Zur Erklärung: Zunächst prüfen Sie, ob die Aufschrift des Buttons aktuell auf Anhalten gesetzt ist. Ist das der Fall, halten Sie die Wiedergabe des Videos mit dem Befehl mediaElement1.Pause(); an. Gleichzeitig setzen Sie die Aufschrift des Buttons auf Fortsetzen. Im else-Zweig verfahren Sie genau umgekehrt. Sie rufen die Play()-Methode auf und setzen die Aufschrift des Buttons auf Anhalten. Während die Methode Stop() die Wiedergabe vollständig beendet, unterbricht die Methode Pause() die Wiedergabe.

Ein Aufruf der Play()-Methode setzt die Wiedergabe an der entsprechenden Stelle fort. Damit die Schaltfläche nach Beenden der Wiedergabe nicht auf Anhalten stehen bleibt, bietet sich noch eine kleine Ergänzung an: Selektieren Sie im Design-Bereich das MediaElement und wechseln Sie im Eigenschaftenfenster in die Ereignisansicht. Klicken Sie doppelt auf das Ereignis MediaEnded, um die zugehörige Ereignismethode zu erstellen. In Rumpf dieser Methode weisen Sie der Eigenschaft Content des Buttons den String "Abspielen" zu.

private void mediaElement1_
MediaEnded(object sender, RoutedEventArgs e)
{ button1.Content = "Abspielen"; }

Wenn Sie die Anwendung jetzt starten, sollte sich das Video anhalten, wieder fortsetzen und auch wiederholt abspielen lassen.

Apps veröffentlichen auf dem Marketplace

software, tools, programmierung

© Hersteller/Archiv

Der App Hub: Zentrale Anlaufstelle für alle, die ihre Windows-Phone-Applikationen der Allgemeinheit zur Verfügung stellen wollen.

Mit steigendem Know-how und guten Ideen werden Ihre Windows-Phone-Applikationen sicher auch für andere Nutzer interessant. Wenn es soweit ist, können Sie Ihre Apps für andere auf dem Marketplace zur Verfügung stellen, entweder kostenfrei oder gegen Entgelt - diese Entscheidung treffen Sie für jede Applikation beim Hochladen. Als Erstes müssen Sie sich beim App Hub als Entwickler registrieren.

Voraussetzung dafür ist eine Windows Live ID. Das Registrierungsformular rufen Sie über Submit for Windows Phone auf. Eine ausführliche Beschreibung zu den einzelnen Punkten des Registrierungsformulars erhalten Sie auf der Homepage . Nachdem Sie sich registriert haben, können Sie Ihre Apps als XAP-Archive hochladen. Dabei haben Sie die Option, diese zunächst als Beta-Version einem eingeschränkten Benutzerkreis zur Verfügung zu stellen.

Wählen Sie in diesem Fall unter Distribute to nicht Public Marketplace, sondern Private Beta Test. Die Beta-Tester laden Sie selbst per E-Mail ein.

Jede App, die Sie auf den Marketplace hochladen wollen, unterliegt einem strengen Zertifizierungsprozess. Die Richtlinien, mit denen Sie sich unbedingt bereits während der Entwicklung auseinandersetzen sollten, sind in dem Dokument Application Certification Requirements for Windows Phone zusammengefasst. Wichtige Informationen finden Sie auch auf  unter Application Submission Checklist. Die genannten Webseiten erreichen Sie ebenfalls über die Startseite des App Hub.

Entwicklungswerkzeuge installieren

software, tools, programmierung

© Hersteller/Archiv

Windows Phone-Projekt in Visual Studio: Paralleles Arbeiten in der Design-Ansicht und im XAML-Code.

Das Windows Phone SDK (früher Windows Phone Developer Tools) trägt die Versionsnummer 7.1. Sie können damit Applikationen und Spiele für Windows-Phone-7.0- und Windows-Phone-7.5-Smartphones entwickeln (Windows Phone 7.5 ist weithin auch unter dem Codenamen Mango bekannt). Sie laden das Windows Phone SDK kostenlos über die Internetseite create.msdn.com.

Klicken Sie auf Download the free tools und auf der Folgeseite auf Windows Phone SDK 7.1 - den Link finden Sie im Fließtext des ersten Abschnitts. Auf der Downloadseite , die nun erscheint, stellen Sie noch die gewünschte Sprache ein, bevor Sie die Datei vm_web2.exe herunterladen bzw. sofort ausführen.

Achtung: Wenn Sie bereits Visual Studio 2010 auf Ihrem Computer installiert haben, muss sich die Sprachversion des Windows Phone SDK nach diesem richten, andernfalls installieren sich die neuen Projektvorlagen nicht. Wenn Sie also ein deutsches Visual Studio einsetzen, dann müssen Sie auch die deutsche Variante vom Windows Phone SDK 7.1 installieren.

Mit dem Windows Phone SDK installieren Sie sich, falls noch nicht vorhanden, folgende Komponenten: Microsoft Visual Studio 2010 Express for Windows Phone, falls Sie Visual Studio 2010 nicht installiert haben. Ist auf Ihrem Computer bereits Visual Studio installiert, dann werden dort die Projektvorlagen für Windows Phone-Projekte hinzugefügt.

  • Benutzeroberflächen mit Blend

Microsoft Expression Blend ist praktisch das Pendant zu Microsoft Visual Studio 2010 Express for Windows Phone bzw. Visual Studio. Es bietet spezielle Werkzeuge zum Erstellen von Benutzeroberflächen und ist deshalb vor allem für den Designer gedacht. Nichtsdestotrotz können Sie ein Windows-Phone-Projekt in beiden Tools - auch gleichzeitig - öffnen und Expression Blend bietet die gleichen Projektvorlagen zum Erstellen von Windows-Phone-Projekten wie Visual Studio.

Ziel ist es, einem Team aus Programmierern und Designern zu ermöglichen, an einem Windows-Phone-Projekt Hand in Hand zu arbeiten. Genauso steht es Ihnen natürlich frei, eine aufwändige Benutzeroberfläche zunächst mit Expression Blend zu erstellen und hinterher im Visual Studio am Code weiterzuarbeiten - möglicherweise beides auch im Wechsel. Nach der Installation des Windows Phone SDK finden Sie Microsoft Expression Blend im Startmenü unter Alle Programme/Microsoft Expression.

Mit dem Windows Phone Emulator können Sie Ihre Programme testen, ohne ein Smartphone angeschlossen zu haben. Sie können den Emulator aus Visual Studio oder aus Expression Blend heraus starten (jeweils Taste F5 bzw. Strg+F5) - das ist der übliche Weg - oder separat über Start/Alle Programme/Windows Phone SDK 7.1/Windows Phone Emulator.

Das XNA Game Studio ist ein Framework, das speziell zur Entwicklung von Spielen zur Verfügung steht. Es macht sich ebenfalls in Form von neuen Projektvorlagen bemerkbar. Das Programmiermodell, das dem XNA Game Studio zugrunde liegt, ist allerdings ein völlig anderes, als das von Silverlight, auf dem die übrigen Windows-Phone-Anwendungen basieren.

Wenn Sie bei der Entwicklung von Windows-Phone-Apps neben dem Emulator auch Ihr Smartphone zum Testen verwenden wollen, registrieren Sie dieses mit dem Tool Windows Phone Developer Registration (Start/Alle Programme/Windows Phone SDK 7.1/Windows Phone Developer Registration). Das ist notwendig, weil handelsübliche Geräte für Applikationen, die nicht aus dem Marketplace stammen, standardmäßig gesperrt sind.

  • Silverlight für den Emulator

Weitere Komponenten, die mit dem Windows Phone SDK gegebenenfalls installiert werden, sind Silverlight und das .NET Framework. Außerdem steht noch ein Update zur Verfügung (Windows Phone SDK 7.1.1 ). Wählen Sie auch für dieses die entsprechende Sprachversion. Das Update installiert eine neue Version des Windows Phone Emulator und verbessert die IntelliSense-Unterstützung.

Mehr zum Thema

HTML 5
Webgestaltung

Google Web Designer ist spezialisiert auf HTML5. Ein Vorteil dieses Standards ist das einfache Einbinden von Videos mit dem Element video. Wir zeigen…
Wir verraten, wie Sie Fritzboxen und andere Router vor Hackern schützen.
Fritzbox, Asus, Belkin und Co.

Fritzbox, Asus, Belkin oder DLink - die Liste der geknackten Router ist lang. Hacker stahlen Passwörter oder NAS-Daten. So machen Sie Ihren Router…
Wir führen Sie zur eigenen Windows-App - unserem PC-Magazin-RSS-Feed.
C# und XAML

Wir zeigen, wie Sie Windows 8.1 Apps selbst programmieren können. Lernen Sie das App erstellen an Hand unseres Beispiels: dem RSS-Feed von PC…
Windows Tipps & Tricks: Benutzerrechte unter Windows 8.1
Programme richtig installieren

Wir zeigen Ihnen, wie Sie sich unter Windows 8.1 alle Benutzerrechte verschaffen und Programme richtig installieren.
Windows 8: Starbildschirm
Microsoft Project Siena

Erstellen Sie sich selbst eine App für Windows 8, die auf alle Funktionen Ihres Tablets zugreifen kann, inklusive Kamera, Mikrofon und Lautsprecher.…