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
MapsSocial
App Deployment Registration
Validation
Certification
Publishing
Marketplace
MO and CC Billing
Business Intelligence
Update Management
Tools
Portal ServicesCloud 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
DevelopmentTools
CLOUD
SCREEN
Tools & Support
Tools you use to
Design & Develop
CLOUD
SCREEN
Phone Emulator
Samples Documentation
Guides Community
Packaging and Verification Tools
Tools
DevelopmentTools
VisualStudioDebug
Silverlight& XNAProjectTypes
- Emulator
- Device
DeveloperRegistrationTool
XAPDeploymentTool
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
MapsSocial
App Deployment
Cloud Services
Notification ServiceLocation 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
devicecloud
Push Notification
Location Services
Location
services
WiFi
+ Accuracy
- Power
- Speed
- Indoors
- Accuracy
+ Power
+ Speed
- Wilderness
- Accuracy
+/- Power
+/- Speed
+/- Urban areas
GPS
Towers
whereami?
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 MANAGEYOUR 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 & DataTemplate
• 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
AnimationCloud
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/)
YOURTURN.YOUR IDEAS.
Build killer application
Windows Phone
http://pujalabs.net
puja.pramudya@gmail.com

Windows Phone Development