Build 2015 4/16/2017 © 2015 Microsoft Corporation. All rights reserved. MICROSOFT MAKES NO WARRANTIES, EXPRESS, IMPLIED OR STATUTORY, AS TO THE INFORMATION.

Slides:



Advertisements
Similar presentations
Introduction to Web Design Lecture number:. Todays Aim: Introduction to Web-designing and how its done. Modelling websites in HTML.
Advertisements

I'll see your cross site scripting and raise you a Content Security Policy Lou Leone :: Rochester OWASP.
Pushing CSP to PROD Case Study of a Real-World Content- Security Policy Implementation.
The Web Warrior Guide to Web Design Technologies
Visual Studio Online. What it Provides Visual Studio Online, based on the capabilities of Team Foundation Server with additional cloud services, is the.
Build /16/2017 © 2015 Microsoft Corporation. All rights reserved. MICROSOFT MAKES NO WARRANTIES, EXPRESS, IMPLIED OR STATUTORY, AS TO THE INFORMATION.
Growing Reach with Universal Windows Apps Windows Developer Platform Improving User Engagement.
请点击以下链接下载 WinHEC 的演讲材料 Download WinHEC presentations here:
1 CS428 Web Engineering Lecture 18 Introduction (PHP - I)
Fraser Technical Solutions, LLC
©2012 Microsoft Corporation. All rights reserved. Content based on SharePoint 2013 Technical Preview and published July Introducing.
Overview of Previous Lesson(s) Over View  ASP.NET Pages  Modular in nature and divided into the core sections  Page directives  Code Section  Page.
London April 2005 London April 2005 Creating Eyeblaster Ads The Rich Media Platform The Rich Media Platform Eyeblaster.
Windows Azure: Microsoft’s Cloud Platform By Shahed Chowdhuri.
Krishna Mohan Koyya Glarimy Technology Services
Tutorial 121 Creating a New Web Forms Page You will find that creating Web Forms is similar to creating traditional Windows applications in Visual Basic.
Windows Camp #wincamp Windows Camp Игорь Сычев Premier Field Engineer, Microsoft Обзор платформы разработки современных клиентских приложений для.
Web hosting in app Creating a Windows Store app with web assets.
Microsoft Virtual Academy North Shore.NET User Group Our Sponsors.
Mobile web Sebastian Lopienski IT Technical Forum 29 June 2012.
Esri UC 2014 | Technical Workshop | Operations Dashboard for ArcGIS: Extending the Functionality Jay Chen Kylie Donia Tif Pun.
Trunica Inc. 500 East Kennedy Blvd #300 Tampa, FL Cross Platform Mobile Apps With Cordova and Visual Studio 2015 © Copyright 2015.
Lewis Benge Bring your code to Windows MOB336.
 Phone Gap is a mobile application development frame work based upon the open source apache cordova project. Developed by Nitobi software Bought by Adobe.
Bridges to the Magickal Faerie Land of Windows 10 Hannes Nel M263.
Ionic & Cordova crash course Ivan Varga
64-bit JIT + SIMD Garbage Collector Runtime components Compilers.NET Compiler Platform (Roslyn) Languages innovation.NET Framework 4.6.NET Core.
UNDERSTANDING YOUR OPTIONS FOR CLIENT-SIDE DEVELOPMENT IN OFFICE 365 Mark Rackley
ASP.NET 5 Unleashed Javier Lozano
What web developers need to know when building Metro style apps Scott Dickens Principal Program Manager Lead Microsoft Corporation DEV352.
PowerPoint Instructions These are not native PowerPoint objects. They are PNG objects. To change the color, you need to go to the Format Tab.
Microsoft® Small Basic Flickr, ImageList, and Network Objects Estimated time to complete this lesson: 1 hour.
Paragon The Platform and Message Broker. Paragon: The Platform Stack -Window Management -Messaging -App Lifecycle Management -App Store -Workspaces -Storage.
Bob German Principal Architect Future-Proof your SharePoint Customizations: Build 2010 Solutions that become 2013 Apps.
Browser code isolation John Mitchell CS 155 Spring 2016.
Intro to Apps Anatomy of an App App Architecture.
Build Hybrid Mobile Apps with Ionic, Angular, & Cordova Brian
PhoneGap. web-based mobile development framework, based on the open-source Cordova project. use standard web technologies such as HTML5, CSS3, and JavaScript.
C# Programming: From Problem Analysis to Program Design1 Visual Studio Configuration C# Programming: From Problem Analysis to Program Design 4th Edition.
CSP STS PKP SRI ETC OMG WTF | scotthelme.co.uk Scott Helme Security Researcher.
Office 365 Development July 2014.
Develop a Quick and Dirty Web interface to your database:
PhoneGap, Processing.
Xamarin Studio Xamarin Curriculum for Xamarin Studio
Developing Windows 10 Games with Construct 2
Tutorial 2 Programming Editors Recommendation & Cordova Plugin Installation and Management Li Xu Department of Systems Engineering.
The Universal Windows Platform
Office 365 Development July 2014.
The Transition to Modern Office Add-in Development
What web developers need to know when building Metro style apps
Introduction to Silverlight
Microsoft Build /19/2018 7:06 PM © 2016 Microsoft Corporation. All rights reserved. MICROSOFT MAKES NO WARRANTIES, EXPRESS, IMPLIED OR STATUTORY,
Introduction to SharePoint Framework (SPFx)
What’s New in Accessibility (for Developers and Users)
Myth Busting: Hosted Web Apps
Myth Busting: Top 5 Web App Myths
Web Page Development Tools
.NET and .NET Core Foot View of .NET Pan Wuming 2017.
Introduction to SharePoint Framework (SPFx)
11/23/2018 8:30 AM BRK3037 BRK3037: Dive deep on building apps and services with the Office 365 Communications Platform David Newman Senior Program Manager.
Hosted Web Apps with Windows App Studio
Modern cloud PaaS for mobile apps, web sites, API's and business logic apps
Integrating Hybrid Apps with Line of Business Apps
Ease of Scale Allows Businesses to Connect with Individuals Using Social Conversations MINI-CASE STUDY “Microsoft Azure has allowed iSwarm to scale our.
Web Page Development Tools
Office 365 Development.
Front End Development workshop
Introduction to JavaScript
Extend Azure DevOps with a Custom PowerShell-based Pipeline Task
What’s ASP.NET 5 and Why? Scott Hunter | Director of Program Management Scott Hanselman | Principal Program Manager.
Presentation transcript:

Build 2015 4/16/2017 © 2015 Microsoft Corporation. All rights reserved. MICROSOFT MAKES NO WARRANTIES, EXPRESS, IMPLIED OR STATUTORY, AS TO THE INFORMATION IN THIS PRESENTATION.

Hosted Web Apps and Web Platform Innovations Build 2014 4/16/2017 2-665 Hosted Web Apps and Web Platform Innovations Jeff Burtoft Senior Program Manager Hosted Web Apps and Platform Innovations © 2014 Microsoft Corporation. All rights reserved. Microsoft, Windows, and other product names are or may be registered trademarks and/or trademarks in the U.S. and/or other countries. The information herein is for informational purposes only and represents the current view of Microsoft Corporation as of the date of this presentation. Because Microsoft must respond to changing market conditions, it should not be interpreted to be a commitment on the part of Microsoft, and Microsoft cannot guarantee the accuracy of any information provided after the date of this presentation. MICROSOFT MAKES NO WARRANTIES, EXPRESS, IMPLIED OR STATUTORY, AS TO THE INFORMATION IN THIS PRESENTATION.

Agenda Introducing Windows Web Apps Hosted Web Apps Packaged Web Apps Build 2014 4/16/2017 Agenda Introducing Windows Web Apps Hosted Web Apps Packaged Web Apps WebView Tooling © 2014 Microsoft Corporation. All rights reserved. Microsoft, Windows, and other product names are or may be registered trademarks and/or trademarks in the U.S. and/or other countries. The information herein is for informational purposes only and represents the current view of Microsoft Corporation as of the date of this presentation. Because Microsoft must respond to changing market conditions, it should not be interpreted to be a commitment on the part of Microsoft, and Microsoft cannot guarantee the accuracy of any information provided after the date of this presentation. MICROSOFT MAKES NO WARRANTIES, EXPRESS, IMPLIED OR STATUTORY, AS TO THE INFORMATION IN THIS PRESENTATION.

Build 2014 4/16/2017 Windows 10 Apps © 2014 Microsoft Corporation. All rights reserved. Microsoft, Windows, and other product names are or may be registered trademarks and/or trademarks in the U.S. and/or other countries. The information herein is for informational purposes only and represents the current view of Microsoft Corporation as of the date of this presentation. Because Microsoft must respond to changing market conditions, it should not be interpreted to be a commitment on the part of Microsoft, and Microsoft cannot guarantee the accuracy of any information provided after the date of this presentation. MICROSOFT MAKES NO WARRANTIES, EXPRESS, IMPLIED OR STATUTORY, AS TO THE INFORMATION IN THIS PRESENTATION.

The Journey to One Windows Build 2015 4/16/2017 7:05 PM The Journey to One Windows Windows Desktop Windows 10 Windows Phone ONE CORE OS ONE APP PLATFORM ONE STORE XBox IoT HoloLens Surface Hub © 2015 Microsoft Corporation. All rights reserved. MICROSOFT MAKES NO WARRANTIES, EXPRESS, IMPLIED OR STATUTORY, AS TO THE INFORMATION IN THIS PRESENTATION.

EdgeHTML.dll Chakra Packaged content Offline first Hosted content Always up-to-date

Hosted Web Apps

Hosted Web App Jeopardy Hosted Appardy Hosted Web App Jeopardy

Friendless In Seattle The Fog Do it Live Child’s Play Hawks > 49ers $100 $500 $2000 $1,000,000

Friendless In Seattle The Fog Do it Live Child’s Play Hawks > 49ers $100 $500 $2000 $1,000,000

Hosted Web Apps Keep your web workflow for updating content Build 2015 4/16/2017 7:05 PM Hosted Web Apps Keep your web workflow for updating content Code Visual Studio Notepad++ Brackets Vim ATOM Sublime Text Emacs Use your editor Push Git SVN Visual Studio Online GitHub Bitbucket Gitlab Push to your repo’s Host Amazon WS Heroku Parse Private Cloud Microsoft Azure Deploy on your service Release Reach Windows users © 2015 Microsoft Corporation. All rights reserved. MICROSOFT MAKES NO WARRANTIES, EXPRESS, IMPLIED OR STATUTORY, AS TO THE INFORMATION IN THIS PRESENTATION.

Friendless In Seattle The Fog Do it Live Child’s Play Hawks > 49ers $100 $500 $2000 $1,000,000

Friendless In Seattle The Fog Do it Live Child’s Play Hawks > 49ers $100 $500 $2000 $1,000,000

Hosted Web Apps XML Manifest URI Allow List (Under-the-hood) WindowsRuntimeAccess= "all" Match="https://*.websites.net/" "allowForWebOnly" Match=https://*.website.net/ Developers can control the Universal APIs they want to expose "none" Match="http://ads.website.net/" Default is no access

Cortana Integration Add a Voice Command Definition file on your server Add a meta element tag in your HTML Handle the Cortana activation in your JavaScript <meta name="msapplication-cortanavcd" content="http://mysite.com/vcd.xml"/>" content="http://flightarcade.azurewebsites.net/vcd/vcd.xml"/> // Add an event listener for the activation event if (Windows.UI.WebUI.WebUIApplication.addEventListener(“activated”, function (args)) { // Handle the Voice Command activation event var activation = Windows.ApplicationModel.Activation; if (args.kind === activation.ActivationKind.voiceCommand) { // Extract the result from the speech recognition from the event arguments var speechRecognitionResult = args.result; // Get the recognized command, defined in the VCD file var command = speechRecognitionResult.rulePath[0]; // Get the full string of text that was spoken var textSpoken = speechRecognitionResult.text; } });

Friendless In Seattle The Fog Do it Live Child’s Play Hawks > 49ers $100 $500 $2000 $1,000,000 Build 2015 4/16/2017 7:05 PM © 2015 Microsoft Corporation. All rights reserved. MICROSOFT MAKES NO WARRANTIES, EXPRESS, IMPLIED OR STATUTORY, AS TO THE INFORMATION IN THIS PRESENTATION.

Final Appardy Category: Do it Live

Packaged JavaScript Apps

Packaged JavaScript Apps Native HTML5/JS apps on Windows Copy and paste your server code locally WebView can still navigate to remote content Leverage the Edge rendering engine Always up-to date New security model using Content Security Policy More frameworks just work

Default CSP is the security model for packaged apps Default policy applied to local content script-src ms-appx: data: 'unsafe-eval'; style-src ms-appx: data: 'unsafe-inline' object-src 'none'; font-src ms-appx: data:; Custom policy specification available Load local content through ms-appx-web:/// Specify policy in html page head with a metatag <meta http-equiv="Content-Security-Policy" content="script-src ms-appx: data:”>

Content Security Policy Overview Directive Example Controls default-src ‘self’ JS, Images, CSS, Font’s, XHRs, Frames, Media script-src ‘self’ my.scripts.com JS style-src ‘self’ my.style.com CSS img-src ‘self’ my.cdn.com <img> connect-src * XHR, WebSockets font-src ‘self’ my.fonts.com Fonts object-src ‘none’ Plugins <object>, <embed>, <applet> media-src my.media.com <audio>, <video> frame-src URIs that iFrames can load sandbox allow-scripts Enables sandbox for requested resource report-uri /my-report-uri.com URI where browser posts policy violation reports

Packaged App Demo Build 2015 4/16/2017 7:05 PM © 2015 Microsoft Corporation. All rights reserved. MICROSOFT MAKES NO WARRANTIES, EXPRESS, IMPLIED OR STATUTORY, AS TO THE INFORMATION IN THIS PRESENTATION.

WebView Control

WebView Control Uses the always current Edge rendering engine Great for HTML5 and the modern web Rich API Set Aimed towards a powerful in App Browser for UAP Apps Improved App to WebView communication Improved app performance and responsiveness WebView is now off the UI thread

WebView Control – New API AddWebAllowedObject API Enables smooth interaction between the application and the WebView Control Developers are able to directly inject a native C#/C++ object into the script engine // Injecting the Object: var notification= new Notification.ToastClass(); webview.addWebAllowedObject(“UniversalWindowsAPIs ", notification); // Calling from WebView: var notification= window.notification; if (notification) { notification.toastMessage('Hello World', 0); }

AddWebAllowedObject Improved communication between Application and Web Content Without AddWebAllowedObject

C#/C++ --sharedObject() -- JS AddWebAllowedObject Improved communication between Application and Web Content With AddWebAllowedObject Windows 10 App C#/C++ --sharedObject() -- JS

WebView Demo

WebView Control – New API Clear Data API Clears all temporary internet files: AppCache, IndexedDB, Dom Storage and cookies var op = MSApp.clearTemporaryWebDataAsync(); op.oncomplete = function () { //Temporary web data cleared successfully var webview = document.getElementById("myWebView"); webview.refresh(); }; op.start();

WebView Control – New Event New Window Event Allows developers to handle content in WebView Attempting to open a new window var webview = document.getElementById('WebView'); //Subscribe to Event webview.addEventListener(" MSWebViewNewWindowRequested", handleNewWindow, false); //Handle Event function handleNewWindow(e) { e.preventDefault(); //Navigate to the url in the webview webview.navigate(e.uri); }

WebView Control – New Event Permission Requests Notifies the developer of getUserMedia requests like geolocation, webcam, and pointer lock document.getElementById('webview').addEventListener('MSWebViewPermissionRequested', handlePermission, false) //Event handler var handlePermission = function(){ if (e.permissionRequest.type === 'geolocation') { e.permissionRequest.allow(); }

WebView Control Windows Universal API access using JavaScript Build 2015 4/16/2017 7:05 PM WebView Control Windows Universal API access using JavaScript Just like hosted web apps, WebView can call APIs directly from web code if (window.Windows){ // Create an appointment with Windows.ApplicationModel.Appointments.Appointment(); } © 2015 Microsoft Corporation. All rights reserved. MICROSOFT MAKES NO WARRANTIES, EXPRESS, IMPLIED OR STATUTORY, AS TO THE INFORMATION IN THIS PRESENTATION.

Tooling

Cordova Packaged Hosted Embedded Native Cordova app with the code stored on a server Embedded Cordova apps housed within a broader native application Native Cordova app with the code stored locally

www.manifoldJS.com

Manifold.js Demo

Summary Web Apps are Universal Windows Apps Hosted Web Apps allow you to leverage code on the server and enable platform integration Packaged Apps are improved with Content Security Policy Edge WebView gives you more granular control ManifoldJS is the simplest way to build Hosted Apps cross platform

Questions?