Windows Phone Development

Preview:

Citation preview

Puja Pramudya

Microsoft Innovation Center

21 November 2010

Windows Phone

USER EXPERIENCE

DIFFERENT KIND OF PHONE

Design Philosophy

Start

Custom Application

Personal Weather surfaced on the live tile in Start

Relevant Weather updated based on your location

Connected Weather for your contacts

Connected Weather for your contacts

THE PLATFORM

DIFFERENT KIND OF PHONE

Platform Goals

Help end users personalize their phones

Help developers be profitable

Enable cloud powered experiences

Hardware Platform

Capacitive touch 4 or more contact points

Sensors A-GPS, Accelerometer, Compass, Light, Proximity

Camera 5 mega pixels or more

Multimedia Common detailed specs, Codec acceleration

Memory 256MB RAM or more, 8GB Flash or more

GPU DirectX 9 acceleration

CPU ARMv7 Cortex/Scorpion or better

800 (

480)

480 (320)

Hardware buttons | Back, Start, Search

Application Platform

CLOUD

SCREEN

Cloud Services

Runtime – On “Screen”

Code you write

on the Client

Code you write &

Services you use in

the Cloud

Tools & Support

Developer Portal Services

Tools you use to

Design & Develop

Tools you use to

Ship & Sell

Application Platform

CLOUD

SCREEN

Cloud Services

Runtime – On “Screen”

Code you write

on the Client

Code you write &

Services you use in

the Cloud

Tools & Support

Developer Portal Services

Tools you use to

Design & Develop

Tools you use to

Ship & Sell

CLOUD

SCREEN

Phone Emulator

Samples Documentation

Guides Community

Packaging and Verification Tools

Notifications

Location Identity Feeds

Maps Social

App Deployment Registration

Validation

Certification

Publishing

Marketplace

MO and CC Billing

Business Intelligence

Update Management

Tools

Portal Services Cloud Services

Sensors Media Data

Xbox LIVE Notifications

.NET Framework managed code sandbox

Location

Phone

Runtime – On “Screen”

Client

CLOUD

SCREEN

Runtime – On “Screen”

Code you write

on the Client

Sensors Media Data

Xbox LIVE Notifications

.NET Framework managed code sandbox

Location

Phone

Runtime – On “Screen”

Build Applications

High performance game framework

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

Rich content pipeline

Mature, robust, widely adopted technology

Xbox 360

Windows

Zune

Application framework (rich functionalities: multimedia, graphics, animation and interactivity all in a single runtime environment)

User interfaces are declared in Extensible Application Markup Language (XAML) and programmed using.NET Framework

Programming logic can be written in any .NET languages (C#, VB.NET)

Build Applications

Graphics UI control heavy consider Silverlight

Require rich vector graphics through XAML, then Silverlight is your only choice

Media Rich video support consider Silverlight

Tooling Microsoft Blend in your pipeline, Silverlight is your best choice

Build Applications

Graphics UI control heavy consider Silverlight

Require rich vector graphics through XAML, then Silverlight is your only choice

Media Rich video support consider Silverlight

Tooling Microsoft Blend in your pipeline, Silverlight is your best choice

Graphics For 3D graphics your choice is the XNA Framework Game Loop

Sprite heavy 2D applications should consider the XNA Framework Game Loop

Simulation/Drawing Those who prefer a traditional update/draw/present frame loop should use the XNA Framework

Tooling Those who want to use the XNA Framework Content Pipeline core graphics types

Development Tools

CLOUD

SCREEN

Tools & Support

Tools you use to

Design & Develop

CLOUD

SCREEN

Phone Emulator

Samples Documentation

Guides Community

Packaging and Verification Tools

Tools

Development Tools

Visual Studio Debug

Silverlight & XNA Project Types

- Emulator

- Device

Developer Registration Tool

XAP Deployment Tool

DEMO

THE DEVELOPMENT TOOLS

Cloud Services

CLOUD

SCREEN

Cloud Services

Code you write &

Services you use in

the Cloud

CLOUD

SCREEN

Notifications

Location Identity Feeds

Maps Social

App Deployment

Cloud Services

Notification Service Location Service

Custom Web Service

Push Notification

Push Notification

Push

client

Push

service

Your

service

Tile

App

Toast

Send push data to URI

Send push

data to client

Send URI

to server

Open push channelReturn URIData to App

Data to toast

Data to tile

Event

devic

e

clo

ud

Push Notification

Location Services

Location services

WiFi

+ Accuracy - Power - Speed - Indoors

- Accuracy + Power + Speed - Wilderness

- Accuracy +/- Power +/- Speed +/- Urban areas

GPS

Towers

where am i?

Portal Services

CLOUD

SCREEN

Developer Portal Services

Tools you use to

Ship & Sell

CLOUD

SCREEN

Registration

Validation

Certification

Publishing

Marketplace

MO and CC Billing

Business Intelligence

Update Management

Portal Services

Portal Services

Application and Game Submission

Sign

Windows Phone 7 Deployment Service

.xap

.dll

App

submission

App

Packaging &

Validation

.xap

.dll

.xap

.dll

.xap

.dll

Apply

Test

Criteria

Marketplace

Add

Metadata

.xap

.dll

.xap

.dll

.xap

.dll

.xap

.dll

Portal Services

DEEPEN CUSTOMER CONNECTION

Trial API

Broad business model & billing support

Push Notification, update & glance able tiles

EASILY MANAGE YOUR BUSINESS

Single self-service portal

Transparent policies, open to 3rd party services

INCREASED DISCOVERABILITY

Single easy-to-find marketplace on device & PC

Reach all WP7 consumers with worldwide distribution

Localized merchandising to promote the best apps

DEMO

BUILDING APPLICATION

New Controls

Data Binding & Data Template

• Clean code

• Time saving

• Maintainability

• Developer-Designer

collaboration

Web Services

External sources : SOAP (WCF, SOAP-

based)

HTTP

REST

Data Format : XML

JSON

RAW

Hosting Own Server

3rd Party

Azure

Navigation

Input

Touch

Soft Input Panel

Application Bar

Hardware Buttons

Accelerometer

Orientation

Phone Specific

Location-aware Push Notification Multitouch

Launcher & Chooser Media

Maps Localization

Accelerometer

Radio FM Office

Animation Cloud

Browser

Linq

Bing Hub

GPS Theme

Isolated Storage

What is NEXT ?

Learn

• Charlez Petzold (http://www.charlespetzold.com/)

• Puja Pramudya

(http://bit.ly/wp7ebook)

Learn

Screencast

(http://ganesia.com/)

YOUR TURN. YOUR IDEAS.

Build killer application

Windows Phone

http://pujalabs.net

puja.pramudya@gmail.com