introducing the windows phone 8.1 app development platform

47
Lagash Systems Mariano Sánchez – Software Architect [email protected] @marianosz

Upload: mariano-sanchez

Post on 14-Apr-2017

59 views

Category:

Software


2 download

TRANSCRIPT

Page 1: Introducing the Windows Phone 8.1 App Development Platform

Lagash SystemsMariano Sánchez – Software Architect

[email protected]@marianosz

Page 2: Introducing the Windows Phone 8.1 App Development Platform

Welcome to Windows Phone 8.1

Page 3: Introducing the Windows Phone 8.1 App Development Platform

Making the most engaging platform better Many New Features for Users Action center to quick launch settings

and view notifications New Skype app integrated with Phone

dialer New Calendar app with new Week view Fast typing with new Word Flow

keyboard Buy app once: use on PC and on Phone App data can roam among devices Start screen backup and restore App data backup Faster app updates Remote viewing of Phone screen Install apps to SD card

Page 4: Introducing the Windows Phone 8.1 App Development Platform

Start screen: Make the Live Tiles Yours Now 3 column start screen available on *all* phones

Customize your Start background with a favourite picture or one of the supplied options

Page 5: Introducing the Windows Phone 8.1 App Development Platform

Cortana: Your PERSONAL Digital Assistant Interact with CORTANA through speech or type

CORTANA learns about you and your interests Enables CORTANA to be proactive

and helpful throughout the day

Page 6: Introducing the Windows Phone 8.1 App Development Platform

Windows Phone 8.1 Hardware Affordability

Decrease HW cost floor (support 8x26, Qualcomm Reference Design)Dual-SIM supportApps to help you get more out of your data plan: DataSense 2.0, Wi-Fi Sense, Storage Sense, Battery Sense

8x26

Page 7: Introducing the Windows Phone 8.1 App Development Platform

How do I get Windows Phone 8.1 on my device?

Page 8: Introducing the Windows Phone 8.1 App Development Platform

Getting Windows Phone OS 8.1 New devices sold into market from June 2014 will have

Windows Phone 8.1 pre-installed All devices running Windows Phone 8.0 are capable of

being upgraded to Windows Phone 8.1 Availability of upgrades for contract devices is under the control of

the Mobile Operator Registered developers can upgrade their phone through

the ‘Preview for Developers’ program Developers who have signed up for a developer account at

http://dev.windowsphone.com Anyone who has signed up (free!) for Microsoft’s App Studio tool:

http://appstudio.windowsphone.com

Page 9: Introducing the Windows Phone 8.1 App Development Platform

Windows Phone 8.1 Preview for Developers Preview for Developers Installs OS updates on your

device Does not install OEM firmware

updates

When the ‘proper’ update is released by your MO/OEM, you will get that update as normal

Page 10: Introducing the Windows Phone 8.1 App Development Platform

Windows Phone 8.1 Developer Platform

Page 11: Introducing the Windows Phone 8.1 App Development Platform

Bringing one Windows to developersWindows 8.1 provides developers with a shared platform that renders the right app experience for the right form-factor

Designed once; engaging everywhere• Converged developer platform• Converged app model• Shared app identities + entitlement• Unified push services (via WNS)

Apps come to life on Windows• Live tile improvements• Action Center for smart notifications• Background execution + triggers• Bluetooth-LE support for wearables +

beacons• Internet Explorer 11 improvements

Page 12: Introducing the Windows Phone 8.1 App Development Platform

Platform convergence is a journey…Windows Phone 7.5 Windows Phone 8.0 Windows Phone

8.1Convergence Begins with IE• WP 7.5 shipped with IE9• Same IE codebase as

Windows• Same JavaScript engine

as Windows

Converged Core OS• Common NT kernel, file

system and core networking

• Kernel mode driver f/work

• Secure boot & BitLockerDeveloper Platform• Partial API convergence

(focus on sensors & IAP)• Native Code (C++) and

DirectX• IE10

Converged Dev Platform• More skillset reuse• More code reuse• More seamless app

experiencesAligning the Stores• Shared dev registration• Shared entitlementCommon Core Platform• Proximity & Location

frameworks• Security & identity• Task scheduler

Page 13: Introducing the Windows Phone 8.1 App Development Platform

API convergence across the Windows platform

The Windows Runtime (WinRT) is the shared runtime and API space used by store apps across the Windows platform (phone and client)

CommonWinRT APIs

Phone-specificWinRT APIs

Windows-specificWinRT APIs

Dramatic convergence in 8.1• Goal is 100% convergence for dev scenarios• In 8.0, we had ~30% API convergence• With 8.1, we move well past 90%+ convergence

Page 14: Introducing the Windows Phone 8.1 App Development Platform

Windows Developer Platform in 8.1

Windows Runtime API SetGraphics Audio Media

Networking File System Input

Commerce

Sensors

.NET CLRWindows Runtime (WinRT)

DirectX(C++)

Windows PhoneSilverlight(C# | VB)

Windows XAML

(C# | VB | C++)

WinJS(HTML + JS)

App Model Services

Navigation

Packaging

Contracts

Background

Store(s)

Push

Roaming

Windows Kernel

App Data Backup

Legend

Windows Phone OnlyWindows OnlyWindows +

Windows Phone

Page 15: Introducing the Windows Phone 8.1 App Development Platform

Native App Development on Windows Phone 8.1

DirectX/Direct3D

C++

Gaming

Windows Phone Store Apps with

HTML

JavaScript

WinJS

HTML XAML

Windows Runtime XAML

C#/VB or C++

Windows Phone

Silverlight XAML

C#/VB

* Apps written for Windows Phone 7.x/8.0 all run on Windows Phone 8.1

…others

Windows Runtime

Page 16: Introducing the Windows Phone 8.1 App Development Platform

What’s new for developers in Windows Phone 8.1A summary of the stand-out features for developers

Page 17: Introducing the Windows Phone 8.1 App Development Platform

Converged Windows XAML AppsDevelopers can create a single app that targets Windows Phone and Windows• One Visual Studio ‘Universal app’

project template for your app• Shared dev and test tooling for both

platforms

Page 18: Introducing the Windows Phone 8.1 App Development Platform

Windows Phone Store app using JavaScript & HTMLDevelopers can use their HTML/CSS and JavaScript skills to create native apps that run on Windows Phone, similar to Windows

Page 19: Introducing the Windows Phone 8.1 App Development Platform

Converged Controlswhat’s it really mean?

80% exact same XAML 20% custom

Common SignatureOptimizedDatePicker

TimePickerCommandBarAppBar

Button

CheckBox

RadioButton

ProgressBar

Slider

ToggleSwitch Hub

PivotListViewGridView

Page 20: Introducing the Windows Phone 8.1 App Development Platform

Controls for tailoring UI to each platform

On Windows Phone 8.1 … and on Windows 8.1

Page 21: Introducing the Windows Phone 8.1 App Development Platform

AnimationsSignature Phone animations built in

Page Navigation PointerDown/Up (Tilt) Page Rotation Escalator for MenuFlyout (context menu) Readerboard

ThemeTransitions / ThemeAnimations

Same API as on Windows Key animations updated to match Phone UX

Page 22: Introducing the Windows Phone 8.1 App Development Platform

Multitasking: Background Tasks and Triggers

Task

TimeTriggerPUSH

Notification

LocationTrigger

PushNotificationTrigger

MaintenanceTrigger

InternetAvailable NetworkStateChange

TimeZoneChange

Page 23: Introducing the Windows Phone 8.1 App Development Platform

Shared Tiles and Notification Services

Windows Notification Service (WNS)• Shared push service for Windows

+ Phone• Improved queuing to limit lost

notifications due to intermittent network connectivity

Tile templates + toasts• Shared tile templates (more!)• Periodic tile updates• Toasts

Page 24: Introducing the Windows Phone 8.1 App Development Platform

Action Center Central location to surface

missed notifications Apps can intelligently

manage notifications (silently add, update, and delete notifications)

27

Page 25: Introducing the Windows Phone 8.1 App Development Platform

App Data Model, Data Roaming and Data Backup • Local

Primary local store Can be backed up to users’

OneDrive

• Roaming Data roamed cross-device Limited to 100kb

• Temp Temporary storage Cleaned up in low storage

conditionDevice B

WP 8.1 – PFN 12345

Roaming Local Local

Cache Temp

Device AWP 8.1 App

Roaming Local Local

Cache Temp

Roaming

Backup [Device A]

Page 26: Introducing the Windows Phone 8.1 App Development Platform

Share Contract

Page 27: Introducing the Windows Phone 8.1 App Development Platform

Maps and Geofencing

Page 28: Introducing the Windows Phone 8.1 App Development Platform

Media, Media Editing and Background Audio

Video Editing(Phone only – not available on Windows 8.1)

Background Audio & Streaming Media

MediaFoundation Access

Page 29: Introducing the Windows Phone 8.1 App Development Platform

BluetoothBluetooth LE

Heart rate monitors and other sensorsProximity detectors (Key finder)Developers can use the Bluetooth GATT APIs to access Bluetooth LE services, descriptors, and characteristics

Bluetooth RFCommConnect, host, and communicate with Bluetooth RFCOMM device services Devices using Serial Port Profile (SPP) are supportedClient and server Service Discovery Protocol (SDP)

Background Tasks and TriggersApp can receive Bluetooth data when its running in the backgroundLaunch when a Bluetooth event occurs

Page 30: Introducing the Windows Phone 8.1 App Development Platform

Enterprise Enhancements Mobile device management (MDM) More policy support Client Certificate authentication Convergence with Windows

cryptography APIs Wi-Fi & VPN S/MIME Application management secur

ed

Page 31: Introducing the Windows Phone 8.1 App Development Platform

Identity, Authentication and SSOMicrosoft Account SSOWeb Authentication Broker (WAB)

Authenticate to online service providersover OauthSSO mode enables user to completely bypass log-in pageSimple API

CredentialLockerWindows.Security.Credentials APIs to store credentials (user name, password) securelyIsolation: Apps can only access their own credentialsCredentials roam across trusted devices (works for WAB and IE too!)

Page 32: Introducing the Windows Phone 8.1 App Development Platform

Internet Explorer 11 brings more life to the mobile web via better HTML5 support

Web sites come to life on Windows PhoneAbility to code pinning behavior• Specify high-resolution site icons• Live tiles using notifications

Professional quality video• Adaptive streaming• Secure viewing• Accessibility improvements

WebGL supportWeb spec based on OpenGL ES 2.0, to enable use of low-level 3D graphics APIs on web sites and HTML-based apps

Rich user interactions• Screen + device orientation APIs• Pre-fetch and pre-render

Page 33: Introducing the Windows Phone 8.1 App Development Platform

SDK Tools Hyper-V based emulator improvements:

Network

Multi-touch emulation with mouse

SD card

Location improvements

Push simulationLocally simulate push notifications

Save and load data samples

Page 34: Introducing the Windows Phone 8.1 App Development Platform

Windows Phone Power ToolsAppVerifierFind resource leaks and vulnerabilities in native apps

Performance Monitor Real time diagnostics

Performance Recorder ETW trace capturing

Page 35: Introducing the Windows Phone 8.1 App Development Platform

And much, much more…Email with

Attachments

SL XAML/ Direct3D

enhancements

FileOpenPicker,

FileSavePicker

Read/Write access to SD

card

Easier NFC secure

payment

Wallet cards

Known Folders

(Audio/Video/:Pictures)

Appointments/Calendar

API enhancemen

ts

Appointments/Calendar brokered UI

New background Transfer API

Sensors: Acceleromet

er, light, magnet …

Data Sense 2 WinRT HttpClient

Storage API enhancemen

ts

Graphics enhancemen

ts D2D/DWrite

Social RT AtomPub, Http,

Syndication (Windows.We

b)

Advertising ID

Data.XML Audio effects

Page 36: Introducing the Windows Phone 8.1 App Development Platform

Getting Started

Page 37: Introducing the Windows Phone 8.1 App Development Platform

Windows Dev Centerhttp://dev.windows.com

Page 38: Introducing the Windows Phone 8.1 App Development Platform

Getting the tools The Windows Developer Center is your base for all

things Windows and Windows Phone related http://dev.windows.com http://dev.windowsphone.com

FREE download: Visual Studio Express 2013 for Windows Enables development for Windows 8.1 and Windows Phone 8.1

In Visual Studio 2013 Professional or higher, install Update 2 to add in Windows Phone 8.1 dev tools

Page 39: Introducing the Windows Phone 8.1 App Development Platform

Getting a Windows Developer Account You do not need a Windows Developer

account to download the SDK and start developing apps

You need a developer account to publish Windows Phone and/or Windows Store apps, to use Push Notifications and to unlock more than one phone for development

To get a Developer Account:

Included if you have an MSDN subscription Free to students who have a Dreamspark subscription $19 charge per annum for individual developers, $99 for Company

accounts 44

New!No Credit card required to sign upPaypal supported

Page 40: Introducing the Windows Phone 8.1 App Development Platform

XAML App Developer Choices

45

Page 41: Introducing the Windows Phone 8.1 App Development Platform

Windows Phone History

WP 7.0Silverlig

ht

WP 7.5Silverlig

ht

WP 8.0Silverlig

ht

WP 8.1Silverlig

ht

WP 8.1WinRT

Page 42: Introducing the Windows Phone 8.1 App Development Platform

Windows Phone 8.1 XAML app development…Three Approaches:Approach Pros & Cons

Keep using Silverlight 7.x/8(Windows Phone 8 platform)

Pros Will run on Windows Phone 8.1 (app

compatibility), still runs on earlier Windows Phone devices

Cons Will not take advantage of new platform

capabilities Will not enable targeting of Windows

Use Silverlight 8.1(Move Silverlight app into new execution stack and app package)

Pros Enables existing Silverlight apps to take

advantage of nearly all new APIs and platform capabilities

Cons Will not enable targeting of Windows Will not run on Windows Phone 8 devices

Use Windows RT platformPros

Enables targeting of Windows and Windows Phone

Takes full advantage of new APIs and platform capabilities

Better performance & reduced memory useCons Will not run on Windows Phone 8 devices

Page 43: Introducing the Windows Phone 8.1 App Development Platform

Features Only Available on Silverlight Platform• CameraCaptureTask• Camera Lenses• Lockscreen

background image provider

• Runs under Lock• Background Audio

Agent• Alarms/Reminders

• SocialRT (Silverlight 8.1 only)• VoIP• Continuous

background location tracking (SL 8.0 only)

• Wallet agents• System.ServiceModel

(WCF/SOAP)

48

Page 44: Introducing the Windows Phone 8.1 App Development Platform

Upgrading Silverlight 8.0 apps to Silverlight 8.1 Easily upgrade 8.0 apps to Silverlight 8.1 in Visual

Studio Upgraded apps can access most of the new 8.1 WinRT

APIsBackground Tasks & Triggers

AppX Packaging

WNS Notification

s

New Tile Templates

Action Center

Management

App Data Roaming &

BackupCredential

LockerShare

ContractSD card r/w

accessGeoFencing

Email with Attachment

s

SL XAML/ Direct3D

enhancements

Bluetooth LE and

RFCOMM

Cryptography

Web Authenticatio

n Broker

Page 45: Introducing the Windows Phone 8.1 App Development Platform

Windows Phone 8.1 Platform PrinciplesPrimary features:

Existing Windows Phone 8 apps run flawlesslyWindows Runtime XAML platform and HTML/WinJS support brings convergence with Windows 8.1, and is faster and uses less memory than SilverlightThe core of an app can be built once for Windows and Windows Phone; you can share elements of UI, though it’s best to tailor the user experience for each platform

Convergence is not just in the developer platform: it spans tools, store, commerce Developer investment in the existing Silverlight platform is protected: Existing Silverlight apps can be upgraded to access new Windows Phone 8.1 platform capabilities

Now is the time to build for Windows and Windows Phone!

Page 46: Introducing the Windows Phone 8.1 App Development Platform

Preguntas?

Page 47: Introducing the Windows Phone 8.1 App Development Platform

Muchas Gracias

Mariano Sánchez – Software [email protected]

@marianosz