Entdecken Sie Millionen von E-Books, Hörbüchern und vieles mehr mit einer kostenlosen Testversion

Nur $11.99/Monat nach der Testphase. Jederzeit kündbar.

Windows Phone 8: Kochbuch für professionelle Apps
Windows Phone 8: Kochbuch für professionelle Apps
Windows Phone 8: Kochbuch für professionelle Apps
eBook352 Seiten1 Stunde

Windows Phone 8: Kochbuch für professionelle Apps

Bewertung: 0 von 5 Sternen

()

Vorschau lesen

Über dieses E-Book

Mit Windows Phone 8 wird die Microsoft Plattform mobil. Microsoft geht mit Ihrem hauseigenen mobilen Betriebssystem in die zweite Runde. Dabei ist die aktuelle Version weitaus mehr als ein Update vorhandener Funktionen. Es handelt sich dabei um ein komplett überarbeitetes Betriebssystem, welches sich einen gemeinsamen Systemkern mit Windows 8 teilt. Windows Phone 8 bietet auf der Basis von C# und XAML eine solide Basis für die professionelle Entwicklung von Smartphone Apps.

Lernen Sie in diesem Buch neben den Grundlagen der mobilen Anwendungsentwicklung mit Visual Studio 2012 und Co., den Grundlagen der Gestaltung einer Oberfläche mit XAML, der Nutzung verschiedener Dienste, auch die Möglichkeiten der Wiederverwendung von Programmcode für Windows 8 Anwendungen kennen. Dabei wurde besonders viel Wert auf Praxisnähe und einfache Nachvollziehbarkeit der verwendeten Beispiele gelegt.

Dieses Buch ist ein Begleiter auf Ihrem Weg von der .NET Entwicklung mit C# hin zur mobilen Anwendungsentwicklung auf der Windows Phone 8 Plattform.
SpracheDeutsch
Herausgeberentwickler.press
Erscheinungsdatum10. Okt. 2013
ISBN9783868026313
Windows Phone 8: Kochbuch für professionelle Apps

Mehr von Matthias Fischer lesen

Ähnlich wie Windows Phone 8

Ähnliche E-Books

Internet & Web für Sie

Mehr anzeigen

Ähnliche Artikel

Rezensionen für Windows Phone 8

Bewertung: 0 von 5 Sternen
0 Bewertungen

0 Bewertungen0 Rezensionen

Wie hat es Ihnen gefallen?

Zum Bewerten, tippen

Die Rezension muss mindestens 10 Wörter umfassen

    Buchvorschau

    Windows Phone 8 - Matthias Fischer

    Zusammenarbeit.

    1 Einleitung

    1.1 Die Beispiele zum Buch

    Alle in diesem Buch verwendeten Beispiele liegen in meinem GitHub-Account unter http://github.com/dotnetautor/WP8Kochbuch. Für einen leichteren Zugriff habe ich folgenden Kurz-URL erstellt. http://bit.ly/WP8­Buch.

    Abbildung 1.1: Beispiele auf der GitHub-Seite

    1.1.1 Beispiel als Zip-Archiv laden

    Auf der Startseite befindet sich die Schaltfläche Download Zip. Diese lädt ein komplettes Archiv mit allen Beispielen auf Ihren Computer. Öffnen Sie vor dem Entpacken die Eigenschaften der Datei (rechte Maustaste im Explorer ➝ Eigenschaften) und lassen Sie diesen Download auf Ihrem Computer als „vertrauenswürdige Datei" zu.

    Abbildung 1.2: Zulassen des Downloads auf dem Computer

    Entpacken Sie das Archiv in ein Verzeichnis Ihrer Wahl, z. B. C:\WP8­Kochbuch.

    1.1.2 GitHub-Windows-Client

    Alternativ können Sie den kostenfreien GitHub-Windows-Client unter http://windows.github.com/ herunterladen. Dieser Client ermöglicht es, die Beispiele direkt aus dem Git Repository auf Ihre lokale Festplatte zu „klonen". Bevor Sie jedoch diese Methode verwenden können, müssen Sie zuerst einen Account bei GitHub registrieren, mit dem Sie sich im Client anmelden können.

    Nach der Installation und Einrichtung eines Root-Verzeichnisses für alle Git-Repositories können Sie die Schaltfläche Clone in Desktop verwenden, wenn Sie auf der GitHub-Webseite mit Ihrem GitHub-Account angemeldet sind. Je nach Browser werden Sie ggf. gefragt, ob Sie die App zulassen möchten.

    Abbildung 1.3: Abfrage einer externen Protokollanforderung in Chrome

    Nach dem Starten der App beginnt der GitHub-Client automatisch mit der Übertragung des Repositories auf Ihre Festplatte.

    Abbildung 1.4: GitHub Repository in dem GitHub-Client für Windows

    1.2 Die Windows-Phone-8-Plattform

    In diesem Abschnitt wird die historische Entwicklung der Windows-Phone-Plattform bis zur aktuellen Version Windows Phone 8 beschrieben.

    1.2.1 Hardware der Windows-8-Plattform

    Mit der Einführung von Windows Phone 7 wurde eine einheitliche Plattform geschaffen. Diese Plattform wird auch Hardware Foundation genannt. Alle Geräte, auf denen das Betriebssystem Windows Phone 7 laufen soll, müssen folgende minimale Anforderungen erfüllen.

    Tabelle 1.1: Übersicht der Mindestanforderungen an ein Windows Phone 7

    Mit dem Mango-Release (SDK 7.1 / 7.1.1) sind weitere optionale Sensoren dazugekommen, um neue Geräte mit zusätzlicher Hardware zu unterstützen. Ferner wurden mit der Einführung der so genannten Low Memory Devices die Mindestanforderungen wiederum aufgeweicht, so wurden die Kamera und das A-GPS Device optional.

    Tabelle 1.2: Optionale Features der Windows-Phone-7.1-Plattform

    Profitipp: Die Einführung von optionalen Features hat zur Folge, dass bei der Entwicklung einer App damit zu rechnen ist, das diese App auf einem Gerät laufen könnte, welche das eine oder andere Feature nicht unterstützt. Um Abstürze zu vermeiden, die durch Ansprechen von nicht vorhandener Hardware verursacht werden können, empfiehlt es sich, vor der Nutzung eines Sensors zunächst sicherzustellen, dass dieser in dem Gerät vorhanden ist. Weitere Details dazu finden Sie bei der Beschreibung der jeweiligen Sensoren.

    Auf der Windows-Phone-8-Plattform wurden weitere Features eingeführt. Neben der bereits vorhandenen Auflösung sind zwei neue Auflösungen WXVGA (1280 x 768) und „True-720p" (1280 x 720) hinzugekommen.

    Abbildung 1.5: Vergleich der verschiedenen Auflösungen

    Weiterhin ist die Unterstützung für Multikernprozessoren hinzugekommen. Da diese Unterstützung vor allem durch einen gemeinsamen Betriebssys­temkern mit Windows 8 bedingt ist, kann auch Windows Phone 8 bis zu 64 Prozessorkerne unterstützen. Ferner kam die Unterstützung von SD-Karten in den Größen 16 GB, 32 GB und 64 GB dazu. Auf der externen Speicherkarte können neben Bildern, Musik und Videos auch spezielle Installationspakete für Apps abgelegt werden.

    Hinweis: Apps können nicht auf die Speicherkarte, sondern nur von der Speicherkarte auf das Telefon installiert werden. Dafür müssen die Apps in einem für das Installieren von der Speicherkarte geeignetem Format vorliegen.

    Abbildung 1.6: Multicore und SD-Kartenunterstützung für Windows Phone 8

    Im Bereich Kommunikation werden mit der Einführung von Windows Phone 8 Near Field Communication (NFC) sowie Bluetooth unterstützt. Weitere Details zur Verwendung entsprechender Kommunikations-APIs erhalten Sie im Kapitel „Kommunikation".

    1.2.2 Windows 8 Shared Core

    Die Einführung von Windows 8 hatte auch Auswirkungen auf die Windows-Phone-8-Plattform. Beide neuen Plattformen basieren auf einem gemeinsamen Systemkern, der auch kurz Windows-8-Plattform genannt wird.

    Hinweis: Wenn in diesem Buch die Rede von Windows-8-Plattform ist, ist immer die gemeinsame Plattform gemeint, wenn nichts anderes gesagt wird.

    Windows Phone 7.x basiert auf dem Systemkern von Windows CE 6. Darauf aufbauend befinden sich die Plattformdienste, die unter anderem für die Darstellung der Benutzeroberfläche (UI), die Integration in die Cloud sowie das Anwendungsmodell verantwortlich sind.

    Der in Silverlight oder XNA entwickelte Programmcode wird innerhalb einer Sandbox ausgeführt, welche die Anwendung von der Windows-Phone-Betriebssystemebene isoliert. Das hat zur Folge, dass nur APIs aufgerufen werden können, die von der Sandbox unterstützt werden. So ist unter anderem kein direkter Zugriff auf das Dateisystem möglich. Stattdessen wird jeder App ein eigener abgeschirmter Bereich, der so genannte Isolated Storage, zugeordnet, in dem die App Dateien schreiben und lesen kann. Auf diese Dateien kann nur von der App zugegriffen werden, der sie gehören. Das bedeutet, Dateien können nicht zwischen den einzelnen Apps ausgetauscht werden.

    Abbildung 1.7: Windows Phone 7.x vs. Windows Phone 8

    Im Gegensatz dazu basiert Windows Phone 8 direkt auf einem vollkommen neu entwickelten gemeinsamen Systemkern mit Windows 8. Auf diesem Systemkern aufbauend befinden sich nach wie vor die Plattformdienste. Der Unterschied zwischen dem neuen und dem alten System ist das Entfallen der Sandbox. Die einzelnen APIs, die im Folgenden noch genauer beschrieben werden sollen, greifen direkt auf die entsprechenden Dienste der Plattform zu.

    Binäre Kompatibilität zu Windows Phone 7.x

    Um Entwicklern und Anwendern die Möglichkeit zu geben, weiterhin Windows-Phone-7.x-Apps problemlos auf einem Windows Phone 8 laufen lassen zu können, ohne sie neu übersetzen oder anpassen zu müssen, wurde eine spezielle Zwischensicht, die Quirks Shim eingeführt. Diese Kompatibilitätsschicht bildet alle API-Aufrufe dem Windows Phone 7.x API direkt auf die darunter befindliche Plattformdienstschicht ab. Das funktioniert für die meisten Apps ohne Probleme.

    Der Vollständigkeit halber soll eine der wenigen Ausnahmen an dieser Stelle erwähnt werden, die nicht mit einer Quirks Shim nachgebildet werden kann.

    Der Garbage Collector wurde auf dem Windows Phone 8 aus dem Betriebssystemkern übernommen. Aus diesem Grund verhält sich der Programmcode, der auf eine definierte Reihenfolge bei der Finalisierung der Objekte durch den Finaliser angewiesen ist, anders als auf der Windows-Phone-7.x-Plattform, da auf der neuen Plattform keine Finalisierungsreihenfolge für abhängige Objekte garantiert werden kann.

    Quellcodekompatibilität

    Neben der binären Kompatibilität gibt es auch die Quellcodekompatibilität. Im Gegensatz zu der binären Kompatibilität, bei der die fertig ausgelieferte App mithilfe einer entsprechenden zusätzlichen Schicht ausgeführt werden kann, geht es hierbei um die Möglichkeit, Quelltexte zwischen den Plattformen zu teilen.

    Hinweis: Da vor allem die Namensräume von den Steuerelementen verschoben wurden, bezieht sich diese Quellcodekompatibilität vor allem auf funktionalen Programmcode in C# oder VB.NET und weniger auf XAML Markup Code.

    Abbildung 1.8: Geteilter Quellcode vs. geteilter Binärcode

    1.2.3 Windows-Phone-8-Entwicklungsplattform

    Auf der neuen Windows-Phone-8-Plattform stehen jetzt zwei Welten zur Verfügung. Auf der einen Seite ist es die Welt der Managed-Programmierung mit Programmiersprachen wie C# oder VB.NET, auf der anderen Seite die Unmanged-Welt mit Programmiersprachen wie C/C++. Aus der Sicht des Softwareentwicklers bietet die neue Plattform zunächst die Möglichkeit, weiterhin Apps zu entwickeln, wie bereits für die Windows-Phone-7.x-Plattform, in dem bekannten Managed API. Die Silverlight und XNA Game Studio 4.0 APIs existieren auch unter Windows Phone 8 weiter, zuzüglich einem Anteil für neue Windows-Phone-8-Funktionen. Dieses API wurde von Silverlight für Windows Phone umbenannt in „.NET für Windows Phone API". Technisch verbirgt sich dahinter ein leicht modifiziertes Silverlight 5 wie auch schon in der Vorgängerversion ein Silverlight 4 für Windows Phone. Dieses API kann nur aus der Managed-Welt von .NET angesprochen werden.

    Neu dazugekommen ist die Windows Phone Runtime (WinPRT), die sich einen Teil der Basisfunktionen mit der Windows Runtime (WinRT) von Windows 8 teilt. Die WinPRT ist nicht wie die Vorgängerversion in C# bzw. .NET implementiert, sondern als native COM-Komponenten in C++. Dank eines entsprechenden Mapping Layers kann dieses API sowohl von der Managed-Welt rund um .NET (C#/VB.NET) als auch aus der Unmanaged-Welt rund um C/C++ angesprochen werden.

    Die größte Veränderung kommt mit dem Win32 API, das es ermöglicht, bestimmte Betriebssystemfunktionen direkt aus C/C++ heraus anzusprechen.

    Abbildung 1.9: Die Windows-Phone-8-Plattform aus der Sicht eines Entwicklers

    In diesem Buch ist es nicht möglich, auf alle Kombinationen und Möglichkeiten der Frameworks und Schnittstellen einzugehen. Ziel ist es vielmehr, einen Überblick über die Entwicklung mit C# und XAML zu geben sowie einen schnellen Einstieg in die App-Entwicklung zu ermöglichen.

    1.2.4 Wann welches API?

    Die Tatsache, dass es zwei managed APIs unter Windows Phone 8 gibt, stellt uns Entwickler vor die Wahl, welches API in der App zur Anwendung kommen soll. Viele der Funktionen sind doppelt vorhanden, einmal im .NET for Windows Phone API und einmal im WinPRT API.

    Das Wichtigste zuerst: Beide APIs sind gleichberechtigt, die Unterscheidung erfolgt implizit mithilfe des Namensraums. Alle WinPRT-API-Funktionen befinden sich in Namensräumen, die mit „Windows" beginnen.

    Tabelle 1.3: Beispiele für sich überschneidende API-Funktionen

    Wenn es kein anderes Kriterium für die Entscheidung gibt, empfiehlt es sich, Folgendes zu beachten:

    Programmcode, der zwischen WP 7.x und WP 8 geteilt werden oder direkt von WP 7.x portiert werden soll, lässt sich leichter mithilfe der .NET für Windows Phone API realisieren, da die gleichen Funktionen (größtenteils) auf beiden Plattformen zur Verfügung stehen.

    Für Programmcode, der vor allem zwischen Windows Phone 8 und Windows 8 geteilt werden soll, empfiehlt es sich hingegen, das WinPRT API zu verwenden, weil die WinPRT und WinRT APIs sich größtenteils überscheiden.

    Hinweis: Weitere Informationen über die Entwicklung einer App für mehrere Plattformen erfahren Sie im Kapitel „Multiplattformentwicklung"

    1.3 Werkzeuge

    Bevor es jedoch mit der Erstellung Ihrer ersten App losgehen kann, müssen zunächst die entsprechenden Werkzeuge für die Entwicklung auf Ihrer Entwicklungsumgebung vorhanden sein.

    1.3.1 Werkzeuge und Umgebung

    Für die Entwicklung von Windows-Phone-8-Apps stellt Microsoft das Windows Phone SDK in verschiedenen Versionen bereit. Für dieses Buch wurde das Windows Phone SDK 8.0 verwendet, das Sie unter http://bit.ly/wp8sdk herunterladen können.

    In dem kostenlosen SDK sind alle Werkzeuge enthalten, die Sie im Folgenden benötigen werden, um eine App für die Windows-Phone-8-Plattform zu erstellen:

    Visual Studio 2012 Express

    Blend für Visual Studio 2012

    Windows Phone 8 SDK

    Windows Phone 7.1 SDK¹

    Windows Phone 8 Emulator

    Windows Phone 7.X Emulator

    Profitipp: Das Windows Phone SDK 8.0 installiert die Express-Version von

    Gefällt Ihnen die Vorschau?
    Seite 1 von 1