introducing the windows phone 8.1 app development platform
TRANSCRIPT
Lagash SystemsMariano Sánchez – Software Architect
[email protected]@marianosz
Welcome to Windows Phone 8.1
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
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
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
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
How do I get Windows Phone 8.1 on my device?
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
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
Windows Phone 8.1 Developer 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
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
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
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
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
What’s new for developers in Windows Phone 8.1A summary of the stand-out features for developers
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
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
Converged Controlswhat’s it really mean?
80% exact same XAML 20% custom
Common SignatureOptimizedDatePicker
TimePickerCommandBarAppBar
Button
CheckBox
RadioButton
ProgressBar
Slider
ToggleSwitch Hub
PivotListViewGridView
Controls for tailoring UI to each platform
On Windows Phone 8.1 … and on Windows 8.1
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
Multitasking: Background Tasks and Triggers
Task
TimeTriggerPUSH
Notification
LocationTrigger
PushNotificationTrigger
MaintenanceTrigger
InternetAvailable NetworkStateChange
TimeZoneChange
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
Action Center Central location to surface
missed notifications Apps can intelligently
manage notifications (silently add, update, and delete notifications)
27
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]
Share Contract
Maps and Geofencing
Media, Media Editing and Background Audio
Video Editing(Phone only – not available on Windows 8.1)
Background Audio & Streaming Media
MediaFoundation Access
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
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
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!)
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
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
Windows Phone Power ToolsAppVerifierFind resource leaks and vulnerabilities in native apps
Performance Monitor Real time diagnostics
Performance Recorder ETW trace capturing
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
Getting Started
Windows Dev Centerhttp://dev.windows.com
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
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
XAML App Developer Choices
45
Windows Phone History
WP 7.0Silverlig
ht
WP 7.5Silverlig
ht
WP 8.0Silverlig
ht
WP 8.1Silverlig
ht
WP 8.1WinRT
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
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
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
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!
Preguntas?