Windows 8

Veröffentlichen Ihrer App im Windows Store

Bruno Terkaly

Mit der richtigen Anleitung ist es überraschend einfach, eine Anwendung im Windows Store zu veröffentlichen. Ich muss es wissen, denn ich habe selbst zwei Anwendungen veröffentlicht (Kids Car Colors und Teach Kids Music), und ich habe anderen Entwicklern bei der Übermittlung von Hunderten von Apps geholfen. Ich bin davon überzeugt, dass Sie innerhalb von ein oder zwei Wochenenden eine nützliche, hochwertige App im Windows Store veröffentlichen können, und in diesem Artikel zeige ich Ihnen, wie Sie dieses Ziel in 10 einfachen Schritten erreichen.

Viele Gründe sprechen dafür, eine Windows Store-Anwendung für Windows 8 zu schreiben. Zunächst einmal ist der Windows Store mit mehr als 100 Millionen heruntergeladenen Apps ein rentables Ökosystem für Unternehmer und Entwickler. Nie zuvor gab es eine so gute Möglichkeit, mit Ihren Windows-Entwicklerkenntnissen Geld zu verdienen. Einer meiner Kollegen verdient mit einem Kartenspiel bereits mehr als 30.000 Dollar pro Monat!

Es gibt einen weiteren guten Grund dafür, Apps für Softwaremärkte zu schreiben: Hier liegt zweifellos die Zukunft der Softwareentwicklung. Vor nicht allzu langer Zeit erstellten die Unternehmen oder einzelne Entwickler eine Websitepräsenz, um sich zu identifizieren bzw. ihre Marke zu präsentieren. Obwohl dies immer noch zutrifft, gibt es einen neuen Trend, nämlich Software für webbasierte Marktplätze wie den Windows Store zu erstellen und über diese zu vertreiben.

Dieses Softwaremodell beseitigt viele der Hürden, mit denen sich angehende Unternehmer konfrontiert sehen, zum Beispiel Kundenakquise, Abrechnung und Inkasso, Bereitstellung und Installation, um nur einige zu nennen. Mit Windows 8 und dem Windows Store können Millionen von Kunden überall auf der Welt hochwertige, zertifizierte Apps finden, ausprobieren und kaufen. Für die Entwickler ist es einfach, Apps zu verteilen, zu aktualisieren und die Bezahlung für die entwickelten Apps zu erhalten.

Zunächst möchte ich vorausschicken, dass ich mich in diesem Artikel auf Windows 8 und nicht auf Windows Phone konzentriere. Für Windows Phone gibt es einen eigenen Store (Marktplatz) und ein eigenes, separates SDK.

10 einfache Schritte

In diesem Artikel möchte ich die Schritte erläutern, mit denen ich meine zwei Apps im Windows Store veröffentlicht habe. Wie Sie sich vorstellen können, musste ich mir einige neue Kenntnisse aneignen, die ich an Sie weitergeben möchte. Sehen wir uns diese Schritte an.

  1. Entwickeln Sie eine Idee – ein Spiel, eine Produktivitäts- oder Informations-App, oder eigentlich jede Idee, die sich für das Format eignet.
  2. Laden Sie die Tools, SDKs usw. herunter. Sie müssen Windows 8 ausführen, und Sie müssen Visual Studio 2012 Express für Windows Desktop (kostenlos) und die optionalen SDKs wie beispielsweise das Windows SDK für Windows 8 und das Advertising SDK herunterladen und installieren.
  3. Eröffnen Sie im Dev Center-Portal von Microsoft ein Windows Store-Entwicklerkonto. Hier registrieren Sie sich, und Sie geben Informationen über Ihre App ein, darunter den Namen, den Preis, In-App-Käufe, eine Beschreibung und Screenshots für den Store (Sie verfügen über Screenshots, wenn Sie den 5. Schritt abgeschlossen haben). Möglicherweise sind Sie für ein kostenloses Windows Store-Konto berechtigt.
  4. Überlegen Sie, ob in der App Anzeigen angezeigt werden sollen. Wenn das der Fall ist, benötigen Sie ein Microsoft Advertising pubCenter-Konto. Sie erhalten dann ein AdUnitId-Element, das in der Anwendung in einem AdControl-Element verwendet wird.
  5. Wählen Sie in Visual Studio die gewünschten Projektvorlagen und Sprachen aus, und erstellen Sie ein Projekt. Wenn Sie die Entwicklung abgeschlossen haben, erstellen Sie ein App-Paket (im Grunde eine komprimierte Version der Anwendung).
  6. Laden Sie das App-Paket im Dev Center-Portal hoch. In Schritt 3 haben Sie bereits Informationen über die App eingegeben. Jetzt laden Sie das fertige Anwendungspaket hoch.
  7. Schließen Sie die restlichen Aufgaben im Dev Center-Portal ab. Nach dem Hochladen des App-Pakets füllen Sie die verbleibenden zwei Abschnitte aus: die App-Beschreibung und die Hinweise für Tester.
  8. Sie warten nun auf die Zertifizierung. Wenn die App beim Testen der Übereinstimmungen Fehler aufweist, müssen Sie die Probleme beheben.
  9. Übermitteln Sie die App erneut. Es ist nicht ungewöhnlich, dass Apps bei der ersten Übermittlung nicht zertifiziert werden. Hilfe dazu bietet dieses Dokument: bit.ly/rVo1VY.
  10. Passen Sie die App an, und erweitern Sie sie. Eine App sollte mit der Zeit verbessert werden. Auch das Modell für die Einnahmen kann geändert werden. Sie können beispielsweise von einem kostenlosen Modell mit Anzeigenschaltung zu einem Testmodell wechseln. Um mit Anzeigen Geld zu verdienen, ist eine erhebliche Größenordnung nötig.

Betrachten wir jetzt einige Aspekte genauer.

Konzeption einer Idee. Nur mit einer guten Idee können Sie wirklich anfangen. Für mich war das einfach. Ich habe einen 2-jährigen Jungen, der viel lieber mit einem Gerät als mit einem Buch lernt. Ich wusste, dass er ein großer Fan von Autos und von Musik ist. Meine erste App sollte also dazu dienen, ihm mithilfe von Autos die Farben zu vermitteln. Mit der zweiten App wollte ich ihm die Instrumente in einem Orchester zeigen, und zwar ihr Aussehen und ihren Klang.

Die beliebtesten Apps sind mit großem Abstand die Spiele, und zwar sowohl was die Downloads als auch was die Zeit betrifft, die mit der Anwendung verbracht wird. Die zweitpopulärste Anwendungskategorie sind soziale Netzwerke, gefolgt von Unterhaltung und Hilfsprogrammen (weitere Informationen finden Sie in der Präsentation „Die Zukunft mobiler Geräte” unter read.bi/ZGIUV6). Wenn Sie auf eine größtmögliche Popularität und somit Monetarisierung abzielen, sollten Sie überlegen, in welchen Anwendungstyp Sie Ihre Ressourcen investieren.

Design. Windows 8 stellt hinsichtlich des Oberflächendesigns einen großen Schritt nach vorne dar. Windows 8 lässt sich schnell und fließend verwenden und eignet sich perfekt für mobile Geräte mit Touchunterstützung wie beispielsweise Laptops, Tablets und Convertible-Tablet-PCs. Das neue Entwurfsparadigma ist formal als Microsoft UI Design Language bekannt und wird auch als Modern UI bezeichnet. Der Designschwerpunkt liegt auf einer ansprechenden typografischen Gestaltung anstelle von auffälligen Grafiken, und anstatt von Befehlen im Chrom werden für die Benutzer die Inhalte in den Vordergrund gerückt. Der Grundstein der Anwendungsentwicklung mit dem Modern UI-Design ist der minimalistische Ansatz, bei dem Balance, Symmetrie und Hierarchie als wichtige Säulen dienen, wie in Abbildung 1 in der Bing News-Anwendung zu sehen. Schlagschatten, Transparenz und 3D gehören der Vergangenheit an. Alle Anwendungen, die für den Windows Store angenommen werden, müssen den Windows Store-Designprinzipien für die Benutzeroberfläche entsprechen (weitere Anleitungen finden Sie unter design.windows.com und bit.ly/R1mlWH).

New Windows UI Design in Practice
Abbildung 1: Das neue Windows-Design für die Benutzeroberfläche in der Praxis

Positiv für .NET-Entwickler – und andere. Trotz des neuen Entwurfsparadigmas werden .NET-Entwickler sich gleich zu Hause fühlen, da viele vertraute Technologien zum Einsatz kommen. Viele Elemente des neuen Frameworks Windows-Runtime (WinRT) können sowohl als Teilmenge als auch als Obermenge von Microsoft .NET Framework betrachtet werden. Sie können mit einer Vielzahl von Sprachen, zum Beispiel C++/Komponentenerweiterungen (CX), C#, Visual Basic .NET und JavaScript/TypeScript auf Windows-Runtime zugreifen. Windows-Runtime ist eine Teilmenge, da viele der typischen .NET-Elemente – die sich auf ungefähr 1.800 Typen belaufen – unterstützt werden, jedoch nicht alle. Aber Windows-Runtime ist auch eine Obermenge, denn das Framework kann Touch nutzen und bietet systemeigene Unterstützung für Sensoren, beispielsweise Kameras, Umgebungslichtsensoren und Beschleunigungsmesser. C#-Entwickler werden sich darüber freuen, dass C# eine Sprache erster Klasse ist und es somit kaum erforderlich wird, die Effizienz durch C++ zu steigern. Für Silverlight- und Windows Presentation Foundation(WPF)-Entwickler ist das Schreiben von Programmen für Windows-Runtime aufgrund der intensiven Verwendung von XAML, der deklarativen Markupsprache zum Erstellen von Benutzeroberflächen, vertraut.

Dennoch bietet C++ einige bemerkenswerte Vorteile, insbesondere die Möglichkeit, Direct2D und Direct3D zu nutzen. Direct2D ist eine 2D- und Vektorgrafiken-API, die schnelle, qualitativ hochwertige Grafikleistung bereitstellt und die Hardwarebeschleunigung durch kompatible Grafikkarten nutzt, wodurch die Haupt-CPU für andere Vorgänge verfügbar bleibt. Direct2D baut auf Direct3D auf, der Grafik-API in den Konsolensystemen Xbox und Xbox 360. Direct3D nutzt ebenfalls die Hardwarebeschleunigung und wird zum Rendern von 3D-Grafikanwendungen verwendet, in der Regel Spiele. Wenn Sie zu den vielen Entwicklern gehören, die über C++-Legacycode verfügen, werden Sie gerne erfahren, dass dieser einfach in eine Windows Store-Anwendung portiert werden kann.

Sie müssen sich für die Technologie entscheiden, die für Ihre Kenntnisse und die Anforderungen der App am besten geeignet ist. Webentwickler wählen normalerweise HTML5/JavaScript aus und nutzen die Windows-Bibliothek für JavaScript(WinJS)-APIs, während.NET-Entwickler sich für C# oder Visual Basic entscheiden. Entwickler von High-End-Spielen wählen C++ mit Direct2D/Direct3D. Der gemeinsame Nenner all dieser Sprachen ist die XAML-Unterstützung.

Vorbereitung. Damit Ihr Computer Windows Store-Anwendungen erstellen kann, müssen Sie die richtige Software herunterladen und installieren. Selbstverständlich benötigen Sie ein Exemplar von Windows 8 als zugrunde liegendes Betriebssystem. Wenn Sie bereits über Windows 7 verfügen, geht das Upgrade auf Windows 8 ziemlich nahtlos vonstatten. Windows 8 verfügt einen Desktop, der den Benutzern von Windows 7 vertraut ist und der jederzeit mit der Tastenkombination WINDOWS-TASTE+D aufgerufen werden kann.

Nach der Installation von Windows 8 müssen Sie die Entwicklertools herunterladen und sich im Windows Store-Entwicklerportal für ein Konto registrieren. Sie benötigen Visual Studio 2012. Die kostenlose Express-Version enthält alles, was Sie zum Erstellen einer voll funktionsfähigen Windows Store-App benötigen. Einen Vergleich der verschiedenen Visual Studio-Versionen finden Sie unter bit.ly/Pzan9Y. In Abbildung 2 finden Sie einige Links für den Einstieg.

Abbildung 2: Links für den Einstieg

Windows 8 Kostenpflichtig bit.ly/Sar392
Visual Studio 2012 Express Kostenlos bit.ly/QLJsJT
Anfordern einer Entwicklerlizenz Kostenlos bit.ly/17SWdpd
Für ein Entwicklerkonto registrieren 49,00 USD für Entwickler bit.ly/Y4tTkK
Für Werbung in der App registrieren Kostenlos bit.ly/L6xNAh

Sie können Ihre Windows Store-Anwendungen kostenlos entwickeln und testen, indem Sie sich einfach mit Ihrem Microsoft-Konto für eine Entwicklerlizenz registrieren. Wenn Sie die App im Windows Store bereitstellen möchten, müssen Sie sich für ein Entwicklerkonto registrieren. Sehen Sie sich Microsoft-Programme an, zum Beispiel BizSpark (microsoft.com/bizspark), DreamSpark (bit.ly/QGbma7) und MSDN (bit.ly/­2ludR3). Wenn Sie mit der Schaltung von Anzeigen Geld verdienen möchten, müssen Sie sich in einem weiteren Portal registrieren, dem Microsoft Advertising pubCenter (siehe pubcenter.microsoft.com). Eine der besten und gründlichsten Ressourcen zum Lernen bietet Channel 9 (bit.ly/VP7IO0): „Windows Store-Apps für Anfänger mit C#“. Diese 34-teilige Reihe mit Videos und Beispielcode führt schließlich zu einer voll funktionsfähigen Anwendung.

Lernen, wie Sie entwerfen und entwickeln. Nachdem Sie die Entwicklungsumgebung eingerichtet haben, möchten Sie erfahren, wie Sie Windows Store-Anwendungen entwerfen und entwickeln. Ich zeige Ihnen einige meiner Entwicklungsschritte für Teach Kids Music, und ich stelle später im Artikel einige Lernressourcen zur Vertiefung bereit. In Abbildung 3 finden Sie einige Links zu schnellen Lernprogrammen für den Einstieg.

Abbildung 3: Lernprogramme für alle Entwicklertypen

Erstellen Ihrer ersten Windows Store-App mit JavaScript bit.ly/vVbVHC
Erstellen Ihrer ersten Windows Store-App mit C# oder Visual Basic bit.ly/KvKxkt
Erstellen Ihrer ersten Windows Store-App mit C++ bit.ly/11CnUlI
Erstellen Ihrer ersten Windows Store-App mit DirectX bit.ly/A5eZIF

Monetarisierung. Berücksichtigen Sie diesen Aspekt gleich von Anfang an. Es gibt viele Methoden, Geld mit einer Windows Store-Anwendung zu verdienen. Die erste und naheliegendste Methode ist, einen Kaufpreis festzulegen. Im Windows Store Dev Center definieren Sie die Preisdetails für die App zur Veröffentlichung im Windows Store. Sie können einen beliebigen Preis von 1,49 USD bis 999,99 USD festlegen. Sie können sogar einen Testzeitraum von 1 bis 30 Tagen festlegen. Die zweite Monetarisierungsmethode ist Werbung. Diese Methode funktioniert besonders gut mit Spieleanwendungen, bei denen die Benutzer eine erhebliche Zeit mit der App interagieren. Wie bereits erwähnt müssen Sie ein Konto im pubCenter eröffnen, um die Werbemethode zu nutzen. Anschließend ergänzen Sie die Anwendung um ein Steuerelement für die Werbung, indem Sie ein AdControl-Element mit einem AdUnitId-Element hinzufügen, das die Anzeige an eine bestimmte Anwendung bindet.

In-App-Einkäufe sind ein aufkommender Trend und stellen eine der interessanteren Methoden zur Monetarisierung der Anwendung dar. Ähnlich wie bei digitalen Webladenzeilen werden manche Apps als Mittel zum Verkauf von Produkten erstellt. Das bedeutet, dass die App-Kunden direkt in einer Windows Store-Anwendung einkaufen können. Beispielsweise erzielte Rovio Entertainment Ltd., der Schöpfer von Angry Birds, 45 Prozent des Umsatzes in 2012 durch In-App-Einkäufe, wobei Artikel auf Basis der beliebten Spiele des Unternehmens verkauft wurden (Spielzeug, Kleidung und Accessoires). Künstler oder Bekleidungseinzelhändler können Produkte anzeigen und sie den Benutzern der App zum Kauf anbieten. Der Verkauf von Artikeln dieser Art ist typisch für In-App-Einkäufe. Weiter verbreitet ist jedoch, einen Aspekt einer Anwendung kostenlos zur Verfügung zu stellen und anschließend neue Inhalte oder Features zur Erweiterung zum Kauf anzubieten. Um In-App-Einkäufe in der Anwendung zu unterstützen, müssen Sie eine Produkt-ID angeben, die Sie im Dev Center-Portal abrufen können. Die Produkt-ID wird dem Kunden nicht angezeigt. Sie wird als interne Referenz für das Angebot im Programmcode der App verwendet. Der Windows Store unterstützt In-App-Einkäufe direkt im Store oder über Erfüllungsdienste von Drittanbietern. Verwenden Sie zum Testen die CurrentAppSimulator-Klasse (bit.ly/Ry0Imp). Weitere Informationen zum programmgesteuerten Überprüfen von Diensten erhalten Sie unter „Überprüfen von Einkäufen anhand von Belegen“ (bit.ly/UrK8jA).

Erstellen einer App

Beim Erstellen von Teach Kids Music war die Raster-App-Vorlage sehr nützlich, die Sie in Abbildung 4 im Fenster „Neues Projekt“ sehen.

Selecting the Grid App Template in the New Project Window
Abbildung 4: Auswählen der Raster-App-Vorlage im Fenster „Neues Projekt“

In Visual Studio 2012 sind sehr leistungsstarke Tools integriert. Mit einem Kombinationsfeld in einer Symbolleiste können Sie zwischen dem lokalen Computer (Vollbildschirm), dem Simulator oder einem Remotegerät (wie meinem Surface RT) auswählen. Mit dem Simulator können Sie eine Anwendung ausführen und testen, ohne sie physisch auf einem Gerät bereitzustellen. Viele Entwickler können eine Anwendung im Windows Store bereitstellen, ohne sie jemals physisch auf einem Surface-Gerät bereitzustellen. Der Simulator unterstützt mehrere Auflösungen, die Änderung der Ausrichtung und verschiedene Touchmodi.

In Abbildung 5 wird die Raster-App-Standardvorlage im Simulator ausgeführt. Sie enthält Beispieldaten, die geändert werden können, damit die echten Daten unterstützt werden, die die Anwendung benötigt, und diese Möglichkeit habe ich für Teach Kids Music verwendet. Wenn Sie das Raster-App-Vorlageprojekt erstellen, umfasst es die Datei „SampleDataSource.cs“. Diese Datei bearbeiten Sie mit Ihren eigenen Daten.

The Grid App Template Running in the Simulator
Abbildung 5: Die Raster-App-Standardvorlage wird im Simulator ausgeführt

In Abbildung 6 können Sie erkennen, dass Teach Kids Music eng an die Gestaltung der Raster-App-Vorlage angelehnt ist.

Teach Kids Music Running in the Simulator
Abbildung 6: Teach Kids Music wird im Simulator ausgeführt

Wichtig dabei ist, dass es wirklich einfach ist, eine fertige Vorlage zu verwenden und deren Code zu ändern, um eine überzeugende Windows Store-Anwendung zu erstellen. Das bedeutet, dass Sie keine Anwendung von Grund auf erstellen müssen (obwohl diese Möglichkeit durch die Vorlage „Leer“ besteht). Ich habe Teach Kids Music in mehreren Schritten erstellt. Der erste Schritt bestand darin, meine eigenen Daten hinzuzufügen. Dazu habe ich einfach „SampleDataSource.cs“ geändert. Die Beziehung zwischen über- und untergeordneten Elementen wird im Code von zwei Hauptobjekten dargestellt, „SampleDataItem“ (untergeordnet) und „SampleDataGroup“ (übergeordnet). Sie können diese zwei Klassen ändern, damit sie das in der Anwendung erforderliche Datenmodell unterstützen. Teach Kids Music gibt den Klang jedes Instruments wieder. Daher habe ich in der SampleDataItem-Klasse Eigenschaften hinzugefügt, die MP3-Dateien darstellen, um die ich das Projekt ergänzt habe, wie in Abbildung 7 gezeigt.

Abbildung 7: Hinzufügen von Eigenschaften in der SampleDataItem-Klasse

SampleDataGroup strings_group = new SampleDataGroup(
  "Strings"
  ,Strings"
    );
strings_group.Items.Add(new SampleDataItem(
  "Violin"
  ,"There are usually 30 violins in an orchestra" + "," +
   " more than any other instrument."
  ,"Images/Viola.jpg"
  ,"Images/ViolaThumb.jpg"
  ,"Sounds/Violin.mp3"
  ,"Images/PlayButtonBig.png"
  ,strings_group));
// And more ...
this.AllGroups.Add(strings_group);

Ändern des Codes, der von der Vorlage generiert wurde

Ich habe eine Reihe von anderen, direkten Änderungen vorgenommen. Wie Sie in Abbildung 6 sehen, habe ich erstens verschiedene Bilder von Musikinstrumenten verwendet. Um die App zu verschönern, habe ich in Photoshop den Hintergrund entfernt. Ich habe die Bilder in zwei Größen erstellt: In Abbildung 6 sehen Sie die Miniaturansicht, und wenn ein Benutzer auf diese klickt, wird die viel größere Vollbildansicht angezeigt. Zweitens habe ich eine Reihe von MP3-Dateien gekauft, die den Klang von jedem Instrument wiedergeben. Mit dem kostenlosen Audio-Editor Audacity habe ich den Klang verbessert und die Lautstärke angepasst, damit sie für alle Instrumente gleich ist. Im Projektmappen-Explorer in Visual Studio habe ich einen Sounds-Ordner erstellt und die MP3-Dateien hineinkopiert. Drittens habe ich im XAML-Code einige Stilveränderungen vorgenommen. Ich habe den Bildschirmhintergrund in Blau geändert und die Beschreibung für jedes Instrument auf nur eine Zeile gekürzt (den Namen des Instruments). Schließlich habe ich, da ich Klänge wiedergeben möchte, das MediaElement-Steuerelement verwendet, mit dem Ton und Video abgespielt werden können.

Beschleunigen der Entwicklungsarbeit

Durch die integrierte Raster-App-Vorlage habe ich eine Reihe von wichtigen Entwicklerkenntnissen viel schneller verstanden. Ich hatte bereits einige C#-Kenntnisse, darunter Themen wie LINQ, anonyme Typen, Lambdas und andere. Und ich habe gute grundlegende Visual Studio-Kenntnisse, zum Beispiel über das Verwenden des Debuggers, das Hinzufügen von Inhalt zu einem Projekt und die Arbeit mit XAML-Designern (einschließlich Blend) und Codebehind. Aber der eigentliche Vorzug der Raster-App-Vorlage ist, dass ich damit einige komplexere Themen meistern konnte, darunter die folgenden: Datenbindung, Änderungsbenachrichtigungen, Gridview-Steuerelemente, Datenvorlagen, Typkonverter, Bildschirmausrichtungsänderungen, angedockter Zustand, semantischer Zoom, Verträge für „Freigabe“, Verträge für „Suche“, App-Leisten, Flyouts, Lebensdauerverwaltung (Speichern und Wiederherstellen des Zustands), Speichern von Benutzereinstellungen, Verwaltung von Kacheln, Pushbenachrichtigungen, Popupbenachrichtigungen und In-App-Einkäufe. Die oben erwähnte mehrteilige Videoreihe auf Channel 9 kann Sie von Anfang an auf dem Weg bis zum Experten begleiten.

Zertifizierungsanforderungen

Microsoft hat konkrete Zertifizierungsanforderungen (bit.ly/rVo1VY) für Anwendungen festgelegt, die an den Windows Store übermittelt werden. Das Ziel dieser Anforderungen ist die Entstehung eines vielseitigen Katalogs mit hochwertigen, ansprechenden Apps für Windows-Kunden auf der ganzen Welt. Jede an den Store übermittelte App wird gründlich geprüft, um sicherzustellen, dass sie den Zertifizierungsanforderungen für Windows Store-Apps entspricht. Die vielleicht offensichtlichste Anforderung ist zum Beispiel, dass Windows Store-Apps den Kunden einen Wert anbieten müssen. Die Anwendung muss voll funktionsfähig sein. Das auf einer App-Kachel angezeigte Bild „muss einen geeigneten Bezug zum Inhalt der App haben“. Zu den weiteren offenkundigen Anforderungen zählt, dass die App sich wie erwartet verhalten muss, d. h. ohne unerwartet beendet zu werden oder lange Startzeiten (höchsten 5 Sekunden). Mit dem Windows-Zertifizierungskit für Apps (bit.ly/13CDLnX) können Sie dieses Verhalten automatisch testen. Dauert es länger als 5 Sekunden, die Apps zu laden oder aus dem Ruhezustand wiederaufzunehmen, werden sie vom Laufzeitbroker beendet. Rufen Sie daher keinen Webdienst aus dem Ruhezustand auf, und optimieren Sie den Anfangsladevorgang der App. Wenn Sie feststellen, dass der Anfangsladevorgang die zugewiesene Zeit überschreitet, lesen Sie das MSDN-Beispiel für den Begrüßungsbildschirm unter bit.ly/GUrVKn. Das Beispiel bietet einen kreativen Ansatz zum Lösen von Leistungsproblemen beim ersten Laden. Testen Sie Ihre App auch im angedockten Modus, im Quer- und Hochformat und in verschiedenen Auflösungen. Bei der Vorbereitung einer globalen Veröffentlichung einer App spielen viele Aspekte eine Rolle.

Ich habe festgestellt, dass es zwei häufige Gründe dafür gibt, dass Apps nicht erfolgreich für Windows 8 zertifiziert werden. Der erste davon ist, dass die App keine geeignete Datenschutzrichtlinie besitzt (siehe Abschnitt 4.1.1 der Anforderungen). Sofern eine App über die technischen Möglichkeiten zur Datenübertragung verfügt, müssen die Benutzer sowohl auf der veröffentlichten Seite mit der Beschreibung der App als auch in der App selbst auf eine Datenschutzrichtlinie zugreifen können. Die Datenschutzrichtlinien können im Info-Abschnitt der App oder als separater Link zu Datenschutzbestimmungen im Flyout für Einstellungen im Charms-Menü enthalten sein. Für Links zu externen Websites ist die Funktion „Internet (Client)“ nicht erforderlich. Viele Entwickler entscheiden sich für den Link zu Datenschutzbestimmungen, der auf eine Website führt, anstatt eine weitere Seite innerhalb der App zu hosten. Dabei ist ein wichtiger Aspekt, dass die Funktion „Internet (Client)“ standardmäßig aktiviert ist, und sogar wenn Ihre App keinen Gebrauch von dieser Funktion macht, müssen Sie dadurch Datenschutzbestimmungen bereitstellen. Nicht verwendete Funktionen sollten nicht aktiviert werden. Prüfen Sie sie in „Package.appxmanifest“.

Der andere Grund, aus dem Apps häufig nicht zertifiziert werden, sind die Altersfreigaben bit.ly/Ta4Rdq). Sie müssen eine Windows Store-Altersfreigabe zuweisen, um anzugeben, für wen der Inhalt geeignet ist. Es gibt verschiedene Standardorganisationen, die Systeme für Freigaben definieren. So bietet zum Beispiel das PEGI-System (Pan-European Game Information) Richtlinien für eine entsprechende Einstufung im Hinblick auf Gewalt, sexuelle Inhalte und Vulgärsprache. Wenn eine Altersfreigabe erforderlich ist, müssen Sie eine Dokumentation einer Drittpartei übermitteln. Wenn die App persönliche Daten erfasst oder übermittelt, oder wenn die App nicht speziell für jüngere Kinder (Altersfreigabekategorie 3+ und 7+) entwickelt wurde oder eine App benutzergenerierte Inhalte streamt oder verwendet, müssen Sie die Kategorie 12+ wählen. Die meisten Apps für Benutzer, die älter als 12 sind, benötigen keine Altersfreigabe. Anhand der Kriterien in Abbildung 8 können Sie bestimmen, ob die Altersfreigabe der App mit unter 12+ angegeben werden kann. Beachten Sie, dass diese Tabelle nur eine Richtschnur ist; die Angaben können sich im Laufe der Zeit ändern.

Abbildung 8: Hinweise für Altersfreigaben von Apps

Gesammelte Informationen/Funktion, auf die zugegriffen wird Zugriff auf Datenschutzrichtlinie in den App-Einstellungen im Charm „Windows-Einstellungen“ bereitstellen Ist die Altersfreigabe unter 12+ möglich?
SMS Erforderlich Nein
Textnachrichten Erforderlich Nein
Standort Erforderlich Nein
Mikrofon Erforderlich Nein
Webcam Erforderlich Nein
Dokumentbibliothek Erforderlich Nein
Internetverbindung (ein- oder ausgehend) Nicht erforderlich, aber empfohlen Ja
Erfordert ein Anmeldekonto, wobei der Kontoname keine E-Mail-Adresse oder der (tatsächliche) Name des Benutzers sein muss, sondern erfunden sein kann Nicht erforderlich, aber empfohlen Ja
Erfasst oder übermittelt persönliche Angaben: Benutzername, Adresse, Kontonummer, E-Mail-Adresse, Telefonnummer, Kontakte Nicht erforderlich, aber empfohlen Nein
Erfasst oder übermittelt Bilder vom Computerdesktop oder Screenshots Nicht erforderlich, aber empfohlen Nein
Erfasst oder übermittelt den Browserverlauf Nicht erforderlich, aber empfohlen Nein

Support

Nutzen Sie die kostenlosen Möglichkeiten, Entwicklersupport von Microsoft vor Ort zu erhalten. Besuchen Sie die Windows Store App Labs (WSAL), um Ihre App auf unterschiedlicher Hardware zu testen und zuverlässigen Rat sowie Hilfe bei der Entwicklung von einem Windows 8-Experten zu erhalten. Sie finden die Labs in mehr als 30 Städten weltweit, und bisher haben sie bei mehr als 7.000 Apps geholfen. Wenn für Sie keiner der Standorte der Labs erreichbar ist, können Sie virtuelle Optionen wahrnehmen, um die App direkt mit einem Microsoft-Techniker zu prüfen und Hilfe zu erhalten. Das Beste ist, das Hilfsangebot ist kostenlos. Weitere Informationen erhalten Sie unter www.windowsstore.com/applabs, wo Sie sich auch registrieren können.

Erstellen eines App-Pakets

Nachdem Sie die Windows Store-Anwendung geplant, erstellt und getestet haben, können Sie das App-Paket erstellen. Sie müssen keinen Code mehr schreiben, um Windows-Anwendungen zu installieren oder zu deinstallieren. Es gibt kein Konzept mit Patchdateien oder ausführbaren Setupdateien. Stattdessen werden Windows Store-Apps gepackt und übermittelt. Sie können sich ein App-Paket als einen Container oder eine ZIP-Datei vorstellen, mit Code, Daten und Ressourcen, die den Open Packaging Conventions(OPC)-Standards entsprechen. Wenn Sie die generierte APPX-Datei in eine ZIP-Datei umbenennen, können Sie sie öffnen und die Inhalte anzeigen.

Bevor Sie ein App-Paket erstellen können, müssen Sie einige Aufgaben ausführen, wie in Abbildung 9 gezeigt. Wenn Sie die Liste bis zum Punkt „Pakete“ abgearbeitet haben, können Sie das Paket hochladen, das Sie erstellen. An dieser Stelle kehren Sie zu Visual Studio zurück, um das Paket für den Upload physisch zu erstellen.

Filling out App Information at the Windows Store PortalAbbildung 9: Ausfüllen von Informationen zur App im Windows Store-Portal

Wie in Abbildung 10 dargestellt, kann ein App-Paket durch einen einfachen Rechtsklick auf die App – in diesem Fall das TeachKidsMusic-Projekt – erstellt werden.

Creating an App Package in Visual Studio 2012 Solution ExplorerAbbildung 10: Erstellen eines App-Pakets im Visual Studio 2012-Projektmappen-Explorer

Zum Erstellen des Pakets müssen Sie sich anmelden und Ihre Anwendung der Windows Store-Anwendung zuordnen, die Sie zuvor im Windows Dev Center-Portal definiert haben. (Voraussetzung hierfür ist, dass Sie bereits ein Windows Store-Konto eingerichtet und Informationen über die Anwendung im Dev Center-Portal eingegeben haben.) Weitere Informationen zum Erstellen von App-Paketen erhalten Sie unter bit.ly/WHnWq2.

Während des Vorgangs werden Sie gefragt, ob Sie dieselben technischen Tests verwenden möchten, die bei der App-Zertifizierung im Windows Store ausgeführt werden. Das heißt, dass Sie eine lokale Kopie des Windows-Zertifizierungskits für Apps ausführen können, bevor Sie ein Paket hochladen. Das ist sehr empfehlenswert, denn Sie können so etwaige Probleme frühzeitig ermitteln und beheben und damit die Wahrscheinlichkeit erhöhen, dass die App die technische Zertifizierung erhält.

Das App-Paket wird in einem Unterordner des Hauptprojektordners namens „AppPackages“ erstellt. Die Datei, die Sie hochladen, wird in etwa „NAMEIHRERAPP_1.0.0.1_JedeCPU.appxupload“ lauten.

Übermittlung der App

Wenn Sie noch einmal zu Abbildung 9 zurückkehren, sehen Sie, dass nur noch wenige Schritte fehlen, um die Übermittlung der App abzuschließen: Sie müssen die Abschnitte „Beschreibung“ und „Hinweise für Tester“ ausfüllen. Der Abschnitt „Beschreibung“ ist besonders wichtig, denn dessen Inhalt wird dem potenziellen Kunden im Windows Store angezeigt (siehe Abbildung 11). Nachdem Sie die App wie bereits erläutert im Simulator ausgeführt haben, müssen Sie einen Screenshot erstellen. Der Simulator bietet dafür die Schaltfläche „Screenshot kopieren“. Speichern Sie das Bild als PNG-Datei, und laden Sie diese im Dev Center-Portal hoch.

Viewing an Application from the Windows StoreAbbildung 11: Anzeigen einer Anwendung im Windows Store

Der Abschnitt „Beschreibung“ enthält einige Informationen, die sehr wichtig für die App-Zertifizierung sind – ich bin bereits darauf eingegangen, dass viele fehlgeschlagenen Zertifizierungen auf Probleme mit den Datenschutzrichtlinien zurückzuführen sind. Im Abschnitt „Beschreibung“ können Sie auch eine optionale Website, E-Mail-Adresse und Werbebilder einfügen (für den Fall, dass Ihre Anwendung im Windows Store vorgestellt wird).

Im Microsoft Windows Store-Blog unter bit.ly/zFZNAd finden Sie eine sehr nützliche exemplarische Vorgehensweise und Diskussion.

Der Abschnitt „Hinweise für Tester“ ist nur während des Zertifizierungsprozesses für Tester sichtbar. Hier können Sie auf Features oder Verhalten aufmerksam machen, die möglicherweise nicht sofort zu erkennen sind. Falls die App sich beispielsweise bei einem Dienst anmelden muss oder einen Benutzernamen oder ein Kennwort benötigt, weisen Sie die Microsoft-Tester in diesem Abschnitt darauf hin. Die Hinweise können auch hilfreich sein, falls die App Hintergrundaudio verwendet. Stellen Sie in solchen Fällen ein Beispiel bereit, damit die Tester die Audiodatei überprüfen können. Das Beispiel muss von einem einzelnen Tester in weniger als einer Minute reproduzierbar sein.

Als letzten Schritt im ganzen Prozess klicken Sie auf die Schaltfläche „Zur Zertifizierung übermitteln“. Diese Schaltfläche wird nur aktiviert, wenn Sie alle Abschnitte abgeschlossen und das App-Paket im Dev Center-Portal hochgeladen haben. Der Zertifizierungsprozess kann einige Tage in Anspruch nehmen. Wenn Ihre App die Zertifizierung erhält, wird Ihnen das Ergebnis wie in Abbildung 12 mitgeteilt. Wenn die App nicht zertifiziert wurde, erhalten Sie einen Bericht mit den Gründen dafür. In der Regel beheben Sie dann einfach das Problem und übermitteln die App erneut.

Receiving ApprovalAbbildung 12: Empfangen der Genehmigung

Wenn die App nicht zertifiziert wurde und die Gründe dafür nicht klar sind, rufen Sie dev.windows.com auf, klicken Sie auf „Support“ und führen Sie einen Bildlauf zu „Hilfe für Entwicklerkonten“ aus. Geben Sie dann den Problemtyp und die Kategorie an, und wählen Sie den Typ Support aus, den Sie benötigen.

Mit nur 10 einfachen Schritten haben Sie Ihre App an den Windows Store übermittelt. Aber das bedeutet nicht, dass Sie nichts mehr zu tun haben. Überprüfen Sie Ihr Entwicklerportal unbedingt häufig auf Fehlerberichte, und lesen Sie die Bewertungen und das Feedback der Kunden. Erfolgreiche Apps entwickeln sich mit der Zeit weiter und verfügen über mehr Features. Da viele Monetarisierungsstrategien verfügbar sind, passen zahlreiche Entwickler ihr Modell für die Einnahmen an.

Für erfolgreiche Apps gilt auch, dass durch eine Website oder soziales Marketing weiter auf die Apps aufmerksam gemacht wird. In den Details zu Ihrer App finden Sie den Link zum Webportal für die App, den Sie zur Verknüpfung in verschiedenen sozialen Medienhubs verwenden können. Wenn Sie eine Website für die App haben, können Sie außerdem in Internet Explorer 10 ein Popupfenster anzeigen lassen, mit dem die Benutzer die App direkt installieren können. (Weitere Informationen dazu erhalten Sie unter bit.ly/AcEc1J.)

Bruno Terkaly arbeitet als Entwicklungsexperte für Microsoft. Seine fundierten Kenntnisse sind das Ergebnis langjähriger Programmierungserfahrung mit einer Vielzahl von Plattformen, Sprachen, Frameworks, SDKs, Bibliotheken und APIs. Er schreibt Code, Blogs und referiert live über die Erstellung von cloudbasierten Anwendungen, insbesondere mit der Windows Azure-Plattform. Terkaly hat zwei Anwendungen im Windows Store veröffentlicht: Teach Kids Music und Kids Car Colors. Lesen Sie seinen Blog unter blogs.msdn.com/b/brunoterkaly.

Unser Dank gilt dem folgenden technischen Experten für die Durchsicht dieses Artikels: Robert Evans (Microsoft).
Robert Evans ist Senior Premier Field Engineer und weltweiter Technical Lead für Windows 8: Windows Store App Labs. Er ist Microsoft Certified Professional Developer und Windows 8 Dev Bootcamp Master Instructor. Er hat Vorträge bei TechReady, GeekReady und The Tablet Show gehalten, und er war zusätzlich zu zahlreichen Windows 8 Hackathon-Veranstaltungen Gastgeber des Windows 8 Hardware Labs der Build-Konferenz. Vor seiner Tätigkeit als Premier Field Engineer hat Evans 12 Jahre als Software Development Engineer bei Microsoft an verschiedenen Produkten wie beispielsweise Xbox Live, MSN und Mobile Engineering sowie im IT-Bereich von Microsoft gearbeitet.