38
DEVELOPMENT FOR WINDOWS PHONE 8 Damir Dobric

Adc2012 windows phone 8

Embed Size (px)

Citation preview

Page 1: Adc2012 windows phone 8

DEVELOPMENT

FOR

WINDOWS

PHONE 8

Damir Dobric

Page 2: Adc2012 windows phone 8

AGENDA

Platform

Evolution

“Runtime 8”

Platform

Compatibility

Emulator WP8 API

App ModelPlatform

Targeting

Code Sharing/

Speech

Mobile

Services

Page 3: Adc2012 windows phone 8

Evolution

Page 4: Adc2012 windows phone 8

Die Kurze Geschichte der

Zeit

System32

Windows NT

DOS

Windows 95

Windows CE/Embedded

System32/CE

Win Mobile

System32/WinRT

WP7

Vista Windows 8

WinRT

Surface

WP8 Runtime

WP8

Page 5: Adc2012 windows phone 8

Demo

WinRT

As Runtime

(Store App)

As API

(Desktop App)

Page 6: Adc2012 windows phone 8

oWP7 and WP7.1 Apps run on WP8!oNo general breaking changeso Existing code is emulated in Quirks-

Modeo Some API differences

example:XmlSerializerWP8 must have a default constructor.WP7 quirks: It is not necessary to have a default constructor

o Code after Rebuild targets WP8 platform

Platform Compatibility

Page 7: Adc2012 windows phone 8

The dream or reality?

Page 8: Adc2012 windows phone 8

o In Solution Explorer, use the Upgrade to Windows Phone 8.0 command.

o In the project designer, change the Target Windows Phone OS Version value to Windows Phone OS 8.0.

Upgrade

Page 9: Adc2012 windows phone 8

Demo

Windows Phone 8

Hello World

Page 10: Adc2012 windows phone 8

Emulator

• Hardware-assisted virtualization supported and enabled in the BIOS

• Second Level Address Translation (SLAT) supported by the BIOS

• Hardware-based Data Execution Prevention (DEP) supported and enabled in the BIOS

http://developers.de/blogs/damir_dobric/archive/2012/10/14/windows8-error-hypervisor-is-not-running.aspx

Page 11: Adc2012 windows phone 8

Resolution

Resolution Aspect ratioScaled

resolution

WVGA 480 × 800 15:9 480 × 800

WXGA 768 × 1280 15:9 480 × 800

720P 720 × 1280 16:9 480 × 853

Page 12: Adc2012 windows phone 8

Windows Phone API

Page 13: Adc2012 windows phone 8

Windows Phone API

Page 14: Adc2012 windows phone 8

Runtime 8

Page 16: Adc2012 windows phone 8

Facts across platforms

Page 17: Adc2012 windows phone 8

Common API-s

DirectX 11.1

XAudio2

MediaEngine

STL

CRT

WinSock

Native API

Networking

Sensors

Proximity

Storage

DataSaver/Connection Manager

Location

Touch

Online Identity

Keyboard

Launchers & Choosers

In-App Purchase

Sensors

Threading

Base Types/ Windows.Foundation

WinRT API

Page 18: Adc2012 windows phone 8

o Bluetotho Advanced Captureo Lence controlo Photo and Media enhencmetso LongListSelectoro Subset of WinRT storage APIo Data Sense APIo DirectX and native audio and mediao File and protocol associationso In-App purchasingo Location tracking in Backgroundo App as Lock Screen

New APIs

Page 20: Adc2012 windows phone 8

Your Apps Your way

Page 21: Adc2012 windows phone 8

Supported Languages

Page 22: Adc2012 windows phone 8

oC# (HTML5)

oXNA

oC++

oHTML5

Project Templates

Page 23: Adc2012 windows phone 8

Demo

Windows Phone 8

JavaScript

jQueryWeb App

on Phone

http://wpwidgetlibrary.codeplex.com/

Page 24: Adc2012 windows phone 8

oOS 7.1, apps run on a single core, and the scheduler is less aggressive in time-slicing

oOS 8, apps run on multiple cores and the scheduler is more aggressive in time-slicing threads. Raise conditions and concurrency bugs easier to achieve

Threading

Page 25: Adc2012 windows phone 8

oSingle OS 7.1 version which runs on both. No new features are supported. Runs in quirks

oCreate separate copy for 7.1 and 8.0

oCreate separate copy with shared files

Platform Targeting

Page 26: Adc2012 windows phone 8

Demo

Windows Phone 8,Windows 8

Code Sharing

Portable

LibraryLinked Files

Camera Accelerometer

Page 27: Adc2012 windows phone 8

oSocket Listeners (Incoming)Windows.Networking.Sockets

o IPv6

oWinsock Support

oProximity API

Network Improvements

Page 28: Adc2012 windows phone 8

In-App Purchasing

Class Member Description

CurrentAppLoadListingInformationByProductIdsAsync(ListingInformation productIds)

CurrentAppLoadListingInformationByKeywordsAsync(ListingInformationkeywords)

CurrentApp void ReportProductFulfillment(string productId)

ProductLicense bool IsConsumable { get; }

ProductListing string Description { get; }

ProductListing IEnumerable<string> Keywords {get;}

ProductListing ProductType ProductType {get;}

ProductListing string Tag {get;} ProductListing Uri ImageUri { get; }

Page 29: Adc2012 windows phone 8

Demo

Custom Protocol

Page 30: Adc2012 windows phone 8

o Enterprise Enrollment o Company Accounto Symantec Verificationo Corporate Signing Certificate

o Managemento System Centero InTune

o Token Distributiono AETGenerator

generates Application Enrollment Token (AET).aetx

o EnterpriseInstall.exeo Enrolles Tokeno Distributes XAP

o EnterpriseValidation.exeo Periodically sends Device ID, installed apps to MS Server to validate

enterprise.

o Enterprise Developer APIo query what apps are installed for enterprise, o start an enterprise app installation o query pending enterprise app installation

Enterprise Device

Enrollment

Page 31: Adc2012 windows phone 8

Demo

Background Process

Page 32: Adc2012 windows phone 8

Demo

Speech

Page 33: Adc2012 windows phone 8

Demo

Speech

Page 34: Adc2012 windows phone 8

PNS Infrastructure

Page 35: Adc2012 windows phone 8

Demo

Windows Phone 8Windows Azure Mobile Services

Page 36: Adc2012 windows phone 8

Where to start?

WP8 MSDN Documentationhttp://msdn.microsoft.com/en-us/library/windowsphone/develop/ff402535(v=vs.105).aspx

WinRT:http://de.slideshare.net/ITCamp/itcamp-2012-raffaele-rialdi-introduction-to-winrt

Page 37: Adc2012 windows phone 8

Recap

Platform

Evolution

“Runtime 8”

Platform

Compatibility

Emulator WP8 API

App ModelPlatform

Targeting

Code SharingMobile

Services

Page 38: Adc2012 windows phone 8

Differences