windows phone app development overview

41
Windows Phone App Development Overview Alan Mendelevich AdDuplex Founder ailon @ailon.org http://devblog.ailon.org Twitter: @ailon

Upload: alan-mendelevich

Post on 18-Nov-2014

832 views

Category:

Technology


1 download

DESCRIPTION

 

TRANSCRIPT

Windows Phone AppDevelopment Overview

Alan MendelevichAdDuplex Founder

[email protected]://devblog.ailon.orgTwitter: @ailon

Agenda

• Hardware• Metro• Development Overview• Publication

Hardware

Hardware Specification 2010

Display480x800 QVGA320x480 HVGA (future)

Capacitive touch4 or more contact points

Camera5 mega pixels or more

Hardware buttonsStart, Search, Back

GPUDirectX 9 acceleration

CPUARMv7 Cortex/Scorpion or better

Memory256MB RAM or more8GB Flash or more

MultimediaCodec acceleration

SensorsA-GPS, Accelerometer, Compass, Light

Hardware Specification 2011

Form Factors

OEMs

Metro

Metro

Inspiration

Metro Principles

• Clean, light, open, fast• Celebrate typography• Alive & in motion• Content not chrome• Authentically digital

12

Accent Colors

Gestures

Touch Target Sizes

• Minimum recommended touch target size – 9mm (~90 px)

• Minimum spacing between touchable elements – 2mm

• Visible element size – 60-100% of touch surface

Application Bar

• Up to 4 buttons• Only the main

actions• Use slide out

menu for less important items

Pivot

• Grouping and filtering of information• Switching by tapping or swipe

gesture

17

Panorama

• “Rich” content• Leads user to

the next screen

• Starting point for multiple destinations

Metro & Your Own Style

Development Overview

Flavors of Applications

High performance game framework

Rapid creation of multi-screen 2D and 3D games

Rich content pipeline Mature, robust, widely

adopted technology spanning Xbox 360, Windows, and Zune

Modern XAML/event-driven application UI framework

Rapid creation of visually stunning apps

Metro-themed UI controls

500,000 developers spanning Windows and web

Free Powerful Tools

• Expression Blend • Visual Studio

Free Powerful Tools

• http://create.msdn.com– Visual Studio 2010 Express–Windows Phone Emulator– Silverlight– XNA Game Studio 4.0–Microsoft Expression Blend for Windows

Phone– .NET Framework 4

Silverlight for Windows Phone Overview

Silverlight 4+

• Based on Silverlight 4• Plus specific modules (phone

functions, sensors, etc.)• XAML + C# (or VB.NET)• Optimized for performance on

smaller, less powerful devices

XAML

• eXtensible Application Markup Language• XML based• Used in WPF and Silverlight• Declaratively describes UI, animations,

etc.

Theming

• Users can switch system colors– Select black or white

background– Select “accent” color

• Standard Silverlight controls automatically adapt to selected theme

• Preset styles

27

Navigation• Navigation is page

based– Similar to web

navigation– Pages are identified by

URIsprivate void hyperlinkButton1_Click( object sender, RoutedEventArgs e){ NavigationService.Navigate( new Uri("/SecondPage.xaml", UriKind.RelativeOrAbsolute) );}

Back Button

• Returns to the previous page– UI shouldn’t duplicate this functionality

• The behavior could be overridden when going to the previous page isn’t logical– Closing a pop-up dialog, etc.– Can’t be used for actions absolutely

unrelated to “returning”, like shooting, etc.

Application Bar

• Use AppBar instead of a custom menu system

• Up to 4 buttons + menu• Buttons for most

important tasks only• White color on the

transparent background (without circle)

Orientation support

• Pages can be vertical, horizontal or change orientation automatically

• Set via SupportedOrientations property• PortraitOrLandscape value – automatic

orientation switching

Data Binding

• Automatically binds object properties• Separation of concerns

(design/development)–MVVM pattern

Pivot and Panorama

• The best starting point for apps

• Complies with Metro out of the box

• Present information in easily digestible portions

Pivot vs. Panorama

• Can be used to display more information

• Supports programmatic switching

• LoadingPivotItem and UnloadingPivotItem events for delayed content loading

• Effective use of screen real estate

• More impressive• Background images

automatically stretched

• Horizontal PanoramaItem for vizualization of content of different width

Pivot Panorama

Launchers and Choosers

• Each app runs in its own sandbox and can’t accept system resources or other apps

• Launchers and Choosers mitigate this by allowing indirect access to these features

Application Lifecycle

running

deactivated

dormant

activated

Phone resources detachedThreads & timers suspended

Fast App Resume

Save State!State preserved!IsAppInstancePreserved == true

Restore state!IsAppInstancePreserved == false

Resuming .. .

Tombstone the oldest app

Tombstoned

Publishing

Publishing Options

Publishing ProcessApplication and Game Submission

Sign

Windows Phone 7 Deployment Service

.xap

.dll

AppSubmission

AppPackaging &Validation

.xap

.dll

.xap

.dll

.xap

.dll

ApplyTest

Criteria

Marketplace

AddMetadata

.xap

.dll

.xap

.dll

.xap

.dll

.xap

.dll

Summary

• Modern mobile platform• Metro design language• Silverlight or XNA or Silverlight+XNA• Centralized app Marketplace

Additional resources

• App Hub– http://create.msdn.com

• Programming Windows Phone by Charles Petzold– http://www.charlespetzold.com/phone/

• Twitter - #wpdev

Questions?

Alan MendelevichTwitter: @[email protected]