| Lausanne Windows Store Apps using HTML and JavaScript: Become a Windows App Store developer in 60 minutes Valérie Alonso Xavier Bocken Sacha Bruttin
Become an Office 365 developer in 60 min Valerie Alonso, Lead Associate Xavier Bocken, Microsoft Practice Manager Sacha Bruttin, Senior Consultant
Everyday our +350 experts strive to bring together their expertise to provide pragmatic, award-wining solutions to industry leaders.
APPLICATION DEVELOPMENT Collaboration Business Intelligence CRM Systems Integration Development platforms USER EXPERIENCE Usability Analysis User research User journey and flows Interaction Design Prototyping Wire-faming DIGITAL MARKETING Strategy, Planning Creative CRM and E-Commerce Online Advertising, SEO/SEM Social Media Mobile Service Management Identify Management Service Support management TECHNOLOGY & INFRASTRUCTURE Systems Management Security Monitoring & BPM Cloud Computing
TPG Lite bbc8c900-c9ac-43ce-a14b-aa2b01f03345
Agenda Getting started: the user interface Access data and content Enrich your App: semantic zoom, favorites Implement contracts: search Wrap it up
Windows 8 guidelines Windows 8.1 Product Guide: What’s new for developers Windows 8.1: New APIs and features WinRT API Reference
| Lausanne Getting started Chapter 1/5
Getting started: the UI Define a vision for your app List the TPG bus stops and bus wait times Access to a list of favorites bus stops, with information updated in real time Choose the layout of your UI / navigation scheme Hierarchical navigation: more content organized into section/categories/details Flat navigation: simple content Flat navigation Visual Studio templates Navigation app template
Getting started: the UI Windows sizes, continuous scaling and minimum width
Getting started: the UI Device sizes, scaling to screens and screen and (max-width: 1024px) {... all and (orientation: portrait) {...} CSS3 media queries
| Lausanne Getting started: the UI Démo
| Lausanne Access data and content Chapter 2/5
The TPG OpenData API + developer key GetStops.json GetNextDepartures.json?stopCode= censuré
The New Windows.Web.HttpClient API Brand new API for Windows 8.1, replacing: WinJS.xhr for JavaScript; System.Net.Http.HttpClient in C# and VB; IXMLHTTPRequest2 for C++ Highlights for JavaScript programming: Strongly typed HTTP headers Access to cookies and shared cookies A lot more control over caching behavior Powerful HTTP protocol filters
The New Windows.Web.HttpClient API Simple example
The New Windows.Web.HttpClient API More control over caching behavior
The F12 tools equivalent in VS 2013 F12 debugging tools have been rebuilt from the ground up in IE 11 DOM Explorer: intellisense auto-complete for attributes and CSS No-refresh debugging, new tools: UI Responsiveness tool, Javascript Memory Equivalent in Visual Studio 2013: Analyze > Performance and Diagnostics
| Lausanne Access data and content Démo
| Lausanne Enrich your App Chapter 3/5
Enrich your App – Semantic zoom Detailed level Zoomed out level
Enrich your App – Semantic zoom SemanticZoom control Switch between two different views of the same content Uses 2 controls: 1 for zoomed-in view and one for zoomed-out view Inner controls must implement IZoomableView > ListView // Create a WinJS.Binding.List from your data array. var itemsList = new WinJS.Binding.List(myData); // Create the groups for the ListView from the item data and the grouping functions var groupedItemsList = itemsList.createGrouped(getGroupKey, getGroupData, compareGroups);
Enrich your App - Animations Drag items within a list JavaScript: dragSourceStart dragSourceEnd dragBetweenEnter dragBetweenLeave
Windows 8 App lifecycle Incremental save Application data Windows.Storage.ApplicationData localSettings / roamingSettings Session data WinJS.Application.sessionState 5 secs Restore application state if (args.detail.previousExecutionState !== activation.ApplicationExecutionState.terminated) { // TODO: App newly launched. Initialize code goes here. } else { // TODO: App reactivated from suspension. Restore app state here. }
| Lausanne Enrich your App Démo
| Lausanne Implement contracts Chapter 4/5
Windows 8 charms & contracts App contracts Contracts = agreement between one or more apps Search contract Add a search pane to search you app’s content and content from other apps Share contract Help users share content from your app with another and vice versa Play To contract Play digital media to connected DLNA devices Settings contract Provide quick, in-context to your app’s settings
Windows 8.1 search improvements Search in Windows 8 Used the Search charm Implement the Search contract + SearchPane API Search in Windows 8.1 Use the Search charm for global searches In-app search should use the SearchBox control Up to 5 suggestions Up to 3 history items Image separators
| Lausanne Implement search Démo
| Lausanne Wrap it up! Chapter 5/5
Submit your app to the store Open your Windows Store developer account Reserve your app name Choose a business model: free or not, trial, ad-supported Choose the countries and regions where to sell your app Test your app using the Windows App Certification Kit Submit your app to the store
Windows App Certification Kit App certification process Upload > Security tests > Technical compliance > Content compliance > Signing and publishing Test the readiness of your Windows Store app for Win 8 and 8.1 Crash and hang tests App manifest compliance, app capabilities Performance, security Package sanity check Resource usage test
Helpful ressources Windows Store app UI, start to finish Windows 8.1: New APIs and features for developers Microsoft Virtual Academy – Windows Store Apps with HTML5 Jump Start &m=3914&ct=19152#?fbid=yDB7PDIZ1Se&et=3921&m=3914&ct= 19152#fbid &m=3914&ct=19152#?fbid=yDB7PDIZ1Se&et=3921&m=3914&ct= 19152#fbid Free ebook: Programming Windows 8 Apps with HTML, CSS and JavaScript programming-windows-8-apps-with-html-css-and-javascript.aspx programming-windows-8-apps-with-html-css-and-javascript.aspx