Microsoft and Mobile - Meetupfiles.meetup.com/1698110/MicrosoftMobileIntro - Marsman.pdf• MVVM...

Preview:

Citation preview

Microsoft and Mobile Jennifer Marsman

Principal Developer Evangelist, Microsoft

http://blogs.msdn.com/jennifer

Twitter: @JenniferMarsman

There is an app store for Windows 8.

Why Windows?

Opportunity

As of March 2012, IDC

Windows 8 Intro

Windows 8 Architecture

Windows Kernel Services

.NET

SL Win32

Internet

Explorer

C#

VB C / C++

HTML

JavaScript

Desktop Apps

(x86/x64 Devices Only)

Windows Runtime APIs (WinRT)

Application Model

Communication

& Data

Graphics &

Media

Devices &

Printing

C /C++ C# / VB.NET JavaScript

XAML HTML5

Modern Windows 8 Apps

(ARM & x86/x64 Devices)

The New Way Works on ARM Devices as Well The Old Way Still Works

Full Fill Snap

• Support communication between Apps

• Even though apps don’t know each other

• Many exposed via the “Charms Bar”

• Contracts include:

• Search to allow users to search data from your app

• Share to provide information to another app

• Settings to store Application Settings

• File Picker provides App to App file services

• Play To to play Media to connected DNLA devices

A front door A complete picture

Draw you in Remind you Personal

While you were away

Connected

Next up An extension to the App

Multiple Devices

App Settings

App State

Users will likely have multiple devices

• Desktop, Laptop

• Tablet

• Phone

Save settings to the cloud so that applications that run on multiple

devices have consistent configuration. When user changes a setting

on one device, it should be reflected on their other devices

Application state should be persisted to the cloud and consumed by

all devices:

• Current page in a document

• Current level in a game

• Etc.

How to get started with Windows 8 Dev

Contoso Cookbook hands-on lab:

http://aka.ms/ContosoCookbook

Download:

Win8CS.Setup.exe – lab in XAML and C#

Win8JS.Setup.exe – lab in HTML5 and JavaScript

Windows Phone 8 Intro

Windows Phone 8 Programming APIs

Windows Phone 8 supports

• Managed app dev using

the WP7.1, WP8.0 .NET

and WinPRT APIs

• Native app dev using

WinPRT and Win32

• Games dev using the

WP7.1 XNA framework

• Games dev using

Direct3D or DirectX

.NET API for

Windows

Phone

Windows

Phone

Runtime

Win32 &

COM

Managed Managed &

Native

Native

WP7.1 XAML & C#/VB

WP8.0 XAML & C#/VB

WP8.0 Games DirectX/Direct 3D & C++

WP7.1 XNA & C#/VB

WP8.0 XAML & C#/VB with Direct3D Graphics

+ C++

+ C++

• MVVM Pattern with Data Binding (to abstract logic from UI)

• Linked files

• #if conditionals

• Portable Class Libraries

• Using Extension methods to bridge implementation differences

• A common user experience bringing high-quality experiences to the

user.

Best Practices for Windows 8 / Windows Phone 8

4/16/2013 Microsoft confidential 21

4/16/2013 Microsoft confidential 22

Different Form Factors Require Different UX

Windows Phone 8 Windows 8

Screen Size

800x480

1280x720

1280x768

Screen Size

1024x768

2,560x1,440

everything

in between

4/16/2013 Microsoft confidential 23

Different Form Factors Require Different UX

Windows Phone 8 Windows 8

Orientation

Portrait

Landscape

Orientation

Portrait

Landscape

Snapped

Microsoft confidential 24

Different Controls

GridView

Group-able

Array of Tiles

Dynamic item size

Microsoft confidential 25

Different Controls

FlipView

Browsing View

Touch-optimized for

left-right navigation

Microsoft confidential 26

Different Controls

Semantic Zoom

Pinch-zoom through

grouped list of items

Microsoft confidential 27

Different Form Factors Require Different UX

Panorama

Introduction and

exploratory content

Microsoft confidential 28

Different Form Factors Require Different UX

Pivot

Scanning views

Grouped information

Microsoft confidential 29

Different Form Factors Require Different UX

LongListSelector

Headers and Footers

Group header

navigation

Resources

• You must be running Windows 8!

• Go to dev.windows.com or dev.windowsphone.com

• Visual Studio 2012 Express for Win 8/Windows Phone *

• Online documentation

• Windows, Live, and Advertising SDKs

• Sample Apps

• Full Versions of Visual Studio can be used

• Windows 8 simulator and Windows Phone

emulator is provided with free tools

* Get Visual Studio from http://aka.ms/JenVS2012

Visual Studio

2012

Porting apps from iOS and Android

MSDN Resources (includes API mappings): •http://aka.ms/Android •http://aka.ms/iOS My blog: http://blogs.msdn.com/jennifer • iOS post: http://aka.ms/JeniOS •Android posts coming…

Join App Builder.

Build apps. Get rewarded.

http://aka.ms/AppBuilderCR

Get 30 days of expert-guided support and motivation.

Get connected with your local Microsoft Technical Evangelist.

1 2 Publish your app(s) in the Windows Store and/or Windows Phone Store from March 8th to June 30th, 2013.

Enter up to 10 apps per Store and get a $100 virtual Visa card for each that qualifies (up to $2000*).

Enter Now: http://aka.ms/CashForApps *Offer terms and conditions apply

Build 3 apps and get a Windows Phone 8!

• Publish apps by June 30, 2013

• Email jennmar@microsoft.com if interested

Office Hours Jennifer Marsman: http://ohours.org/jennifermarsman

US DPE: http://usdpe.ohours.org

Questions?