17. März 2010 - 19:58 Uhr
Auf der #MIX10 hat Microsoft virtuell die Hosen runtergelassen und viele, viele Details zu Windows Phone 7 Series veröffentlicht. Dabei waren Dinge, die für viele Entwickler, die bisher für Windows Mobile entwickelt haben, unverständlich sind und echte Showstopper darstellen, etwa der Verzicht auf C++, das Nicht-Vorhandensein einer Datenbank, die Einschränkungen hinsichtlich Ressourcen-Zugriff.
Allgemein gibt es im Moment ein gewaltiges Aufheulen in der Community, erste Petitionen werden gestartet, das große Jammern setzt ein. Dabei wird gerne übersehen, dass es zwei ganz gewaltige Unterschiede zwischen Windows Phone und Windows Mobile gibt:
- Windows Phone ist ein kompletter Neustart. Neu, neu, neu – alte Zöpfe wurden abgeschnitten, neue Ansätze ausgelotet. Das System ist darüber hinaus ein klassisches 1er Release, d.h. derzeit fehlende APIs und Funktionalitäten werden ziemlich sicher zukünftig nachgereicht.
- Die Zielgruppe ist eine komplett andere: Bisher waren es Geschäftskunden in verschiedenen Ausprägungen (klingt irgendwie… krank), jetzt sind es Privatleute. Menschen, die ganz andere Dinge, als beim bisherigen System erwarten. Und damit ändern sich auch die zur Verfügung gestellten Funktionalitäten und die Schwerpunkte der Plattform.
Beide Dinge sollte man verstehen, bevor man anfängt, sich über die Plattform aufzuregen.
Kommentieren » | Mobile, Windows Phone 7 Series, WP7S
17. März 2010 - 01:23 Uhr
Nächste Session zum Thema “Development für WindowsPhone 7 Series” ist vorbei. Hier wieder die wichtigsten Informationen:
- Applikationen sind Page-basiert. #WP7S Struktur: Application -> Frame -> Page(s).
- Navigation zwischen Pages: HyperlinkButtons
- Daten übertragen: QueryString-Parameter im HyperlinkButton
- Zugriff auf die QueryString-Parameter: NavigationContext.QueryString.TryGetValue(<Schlüssel>, out <Variable>);
- In aufgerufener Page: OnNavigatedTo()-Methode überschreiben, um entsprechende Initialisierung vorzunehmen.
- Navigation zurück: NavigationService.GoBack();
- Orientation: SupportedOrientation-Property: Landscape, Portrait, PortraitOrLandscape.
- OnOrientationChanged-Methode für entsprechendes Event überschreibbar.
- App-Bar: Buttons und MenuItems. #WP7S Wichtig: Bilder für Buttons müsen als “Content” kompiliert werden.
- Buttons werden in App-Bar direkt angezeigt, MenuItems sind halt das untergeordnete Menü
- SplashScreen: SplashScreenImage.jpg, muss als “Content” kompiliert werden, wird automatisch angezeigt.
- Standard-Controls beherrschen automatisch Theming und Skinning.
- Push notifications: Vom Server initiiert. Großer Vorteil: Applikation muss nicht wirklich multitasken, wird per Push aktiviert.
- Push Notifications: 3 Typen: Tile-Update, Toast-Notification (kleine Notification-Bar), App-Notification für laufende Applikationen.
- Push-Notification: App sendet URI an eigenen Server, Server pushed an gegebene Applikation, Service benachrichtigt Device.
- Push: Keine spezielle Software nötig, alles HTTP-Requests (POST).
- Channel-URI wird von MS bereitgestellt..
- HttpNotificationChannel-Klasse: HttpNotificationChannel channel = new HttpNotificationChannel(“<APP-Name>”);
- EventHandler für ChannelUriUpdated -> In EventHandler wird die URI entgegen genommen.
- Das Push-Zeug sieht wirklich einfach und angenehm benutzbar aus.
- Location-Services derzeit im Emulator nicht aktiviert.
- Location-APIs sind die gleichen, wie bei Windows 7.
- Location auf drei Wegen: Satellit, WIFI und Triangulation per Basis-Stationen.
- Es gibt einen Location-Service (frei) von Microsoft, so dass man oft auf GPS verzichten könnte.
- Location-Service kann Adresse auflösen.
- Klasse für Geo-Koordinaten: GeoCoordinateWatcher.
- Auflösen von Adressen: CivicAddressResolver-Klasse.
- Location-Handling sieht sehr cool aus.
- BackKey-Abfangen: OnBackKeyPress-Methode überschreiben.
- Obscured / Unobscured-Events für Störungen bzw.. das Weggehen der Störungen. Noch nicht in den MIX-Bits.
- Paused / Unpaused – Applikation wird suspended. Wenn der Benutzer wiederkommt: Resume.
- Wenn Pause, dann alles wegspeichern, App könnte (wird) gekillt werden.
- Resume kann genutzt werden, um den Status wieder herzustellen.
So. Die nächste Session handelt von Performance-Optimierungen / –Überlegungen für Windows Phone 7 Series.
Kommentieren » | Windows Phone 7 Series, WP7S