Building Metro style apps that connect to specialized devices

Slides:



Advertisements
Similar presentations
© 2009 Microsoft Corporation. All rights reserved. Microsoft, Windows, Windows Vista and other product names are or may be registered.
Advertisements

© 2012 Microsoft Corporation. All rights reserved. Microsoft, Windows, Windows Vista and other product names are or may be registered trademarks and/or.
Preface Demo A Quick Thank You How Did We Do It?
Feature: Identity Management - Login © 2013 Microsoft Corporation. All rights reserved. Microsoft, Windows, Windows Vista and other product names are or.
© 2012 Microsoft Corporation. All rights reserved. Microsoft, Windows, Windows Vista and other product names are or may be registered trademarks and/or.
© 2010 Microsoft Corporation. All rights reserved. Microsoft, Windows, Windows Vista and other product names are or may be registered.
MIX 09 4/15/ :14 PM © 2009 Microsoft Corporation. All rights reserved. Microsoft, Windows, Windows Vista and other product names are or may be registered.
Windows 7 Training Microsoft Confidential. Windows ® 7 Compatibility Version Checking.
Multitenant Model Request/Response General Model.
Announcing Demo Announcing.
Session 1.
Built by Developers for Developers…. © 2009 Microsoft Corporation. All rights reserved. Microsoft, Windows, Windows Vista and other product names.
WinHEC /22/2017 © 2008 Microsoft Corporation. All rights reserved. Microsoft, Windows, Windows Vista and other product names are or may be registered.
Connect with life Connect with life
Windows Azure Connect Name Title Microsoft Corporation.
demo Receive Inventory Export Parse and Normalize.
© 2012 Microsoft Corporation. All rights reserved. Microsoft, Windows, Windows Vista and other product names are or may be registered trademarks and/or.
Feature: Document Attachment –Replace OLE Notes © 2013 Microsoft Corporation. All rights reserved. Microsoft, Windows, Windows Vista and other product.
Feature: Customer Combiner and Modifier © 2013 Microsoft Corporation. All rights reserved. Microsoft, Windows, Windows Vista and other product names are.
announcing Dev Manager Do I understand what we’ve built? Developer Can I bet on using this shared component? Testers What’s changed since I last.
© 2009 Microsoft Corporation. All rights reserved. Microsoft, Windows, Windows Vista and other product names are or.
demo Instance AInstance B Read “7” Write “8”

Storage Device Design Pattern JEFF MEISSNER; KEN HARDY Windows Program Management.
customer.
demo © 2008 Microsoft Corporation. All rights reserved. Microsoft, Windows, Windows Vista and other product names.
demo Demo.
demo QueryForeign KeyInstance /sm:body()/x:Order/x:Delivery/y:TrackingId1Z
projekt202 © 2009 Microsoft Corporation. All rights reserved. Microsoft, Windows, Windows Vista and other product names are.
© 2009 Microsoft Corporation. All rights reserved. Microsoft, Windows, Windows Vista and other product names are or may be registered trademarks.
© 2008 Microsoft Corporation. All rights reserved. Microsoft, Windows, Windows Vista and other product names are or.

DataModel VisualizationExternal Assets Workbook Excel Services API BrowserRich Apps EWA JSOMBrowser REST BrowserRich Apps.
MIX 09 4/17/2018 4:41 PM © 2009 Microsoft Corporation. All rights reserved. Microsoft, Windows, Windows Vista and other product names are or may be registered.
Building a great Metro style device app for your printer
Возможности Excel 2010, о которых следует знать
Building great Metro style apps for mobile broadband devices
Understanding Wi-Fi Direct in Windows 8
Design Patterns for Connected Specialized Devices
Title of Presentation 11/22/2018 3:34 PM
Deep dive on app data roaming
Building a great Metro style device app for your camera
Building and delivering a great Metro style app for your device
Title of Presentation 12/2/2018 3:48 PM
Customizing WPA Trace Views
Share: Your app powers the Windows 8 share experience
File type associations and AutoPlay
1/3/2019 1:21 PM © 2007 Microsoft Corporation. All rights reserved. Microsoft, Windows, Windows Vista and other product names are or may be registered.
Introducing Metro style device apps
Introduction to the new WPA user interface
Customizing ADK assessment reports
Best practices for packaging and distributing device drivers
8/04/2019 9:13 PM © 2006 Microsoft Corporation. All rights reserved. Microsoft, Windows, Windows Vista and other product names are or may be registered.
Delivering great hardware solutions for Windows
Виктор Хаджийски Катедра “Металургия на желязото и металолеене”
Under the hood: Installation and updates for Metro style apps
Introducing the Windows Store
PENSACOLA ENERGY WORK PLAN OCTOBER 10, 2016
Title of Presentation 5/12/ :53 PM
Шитманов Дархан Қаражанұлы Тарих пәнінің
The complete developer's guide to the SkyDrive API
Title of Presentation 5/24/2019 1:26 PM
5/24/2019 6:44 PM 1/8/18 Bell #10 In a world governed by the gods, is there any room for human will? Do human choices make a difference? EXPLAIN © 2007.
日本初公開!? Vista の新機能を実演 とっちゃん わんくま同盟 7/23/2019 9:09 AM
Title of Presentation 7/24/2019 8:53 PM
Ask the experts: Device apps
WCL425 App Compat for Nerds Chris Jackson.
Advanced app and driver debugging
Presentation transcript:

Building Metro style apps that connect to specialized devices 11/8/2018 8:13 PM HW-747T Building Metro style apps that connect to specialized devices George Roussos Senior Program Manager Microsoft Corporation Nar Ganapathy Partner SDE Microsoft Corporation © 2010 Microsoft Corporation. All rights reserved. Microsoft, Windows, Windows Vista 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 What is a specialized device? Differentiating your device with an Metro style app Specialized device access models Specialized device access APIs You’ll leave with an understanding of how to… Access specialized devices from Metro style apps Choose the right API and access model for your device

What is a specialized device?

Extensible Built-in Experiences What is a specialized device? Devices with Extensible Built-in Experiences Printers Webcam MB SIM Specialized Devices Portable Storage Networked Other

Windows 8 provides flexible APIs to build a Metro style app that showcases your device’s unique functionality.

Why… Device makers want the flexibility to differentiate Not every device can be covered by a built-in experience or API in Windows 8 So we enabled you to create your own experience as a Metro style app

Customer benefits App is automatically installed when device connects Can experience the richness of device with a Metro style app

Device maker benefits A Metro style app can access your device’s unique functionality Windows 8 installs your app when your device is connected You can control 100% of pixels displayed You can control which Metro style apps access your device

Specialized device access models

Specialized device access models Open device access Many apps can access device Example devices: camera, smartphone, eBook reader Restricted device access Access restricted to app(s) declared in device metadata Example device: credit-card reader

Device access architecture

Device access for desktop apps App Process App SetupDi API WPD HID WinUSB CreateFile/DeviceIoControl I/O Manager Driver Device Microsoft Partner

Comparison with Metro style app model Desktop model Application A Application B I/O manager – access check per user Driver Device Microsoft Partner

Comparison with Metro style app model Metro style model Metro style app A Metro style app B Device Access Broker I/O manager – access check per user Driver Device Microsoft Partner

Specialized device access for Metro style apps app container Driver Package Metro style app (HTML/JS, C#,C++) Windows. Networking Windows. Storage Windows Runtime Component (C++) DeviceIoControl Windows Portable Device (WPD) Device Metadata Device Broker I/O Manager Application Manifest Driver Device Microsoft Partner

Windows Portable Device (WPD) Specialized device APIs and access models Category API Family Access Model Specialized Portable Windows Portable Device (WPD) Both Storage Windows.Storage Open Networked Windows.Networking Open Other DeviceIOControl Restricted

Windows portable device (WPD) APIs

Windows portable device 11/8/2018 8:13 PM demo Windows portable device Based upon the portable device services SDK sample Nokia N8 © 2010 Microsoft Corporation. All rights reserved. Microsoft, Windows, Windows Vista 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.

(optional) Windows Runtime Component (C++) WPD APIs app container Application Manifest <Capabilities> <DeviceCapability Name=“Device Service GUID” /> </Capabilities> Metro style app (optional) Windows Runtime Component (C++) WPD APIs Device Metadata SoftwareInfo.xml ,,,,,, <DeviceCompanionApplications> <Package>….</Package> </DeviceCompanionApplications> Optional Driver Portable Device MTP or MSC Class Driver Microsoft Partner

Storage device APIs

Metro style app (HTML/JS, C#, C++) Windows.Storage APIs app container Application Manifest <Capabilities> removableStorage </Capabilities> Metro style app (HTML/JS, C#, C++) Windows.Storage APIs Device Metadata SoftwareInfo.xml ,,,,,, <DeviceCompanionApplications> <Package>….</Package> </DeviceCompanionApplications> Storage Device Microsoft Partner

Network device APIs

Windows.Networking APIs app container Application Manifest <Capabilities> Internet </Capabilities> Metro style app (HTML/JS, C#, C++) Windows.Networking APIs Device Metadata SoftwareInfo.xml ,,,,,, <DeviceCompanionApplications> <Package>….</Package> </DeviceCompanionApplications> Networked PNP-X Device Microsoft Partner

DeviceIOControl APIs

DeviceIOControl APIs app container Application Manifest <Capabilities> <DeviceCapability Name=“GUID for custom device interface class” /> </Capabilities> Metro style app (e.g., Microsoft.SDKSamples.Mofx2App) Windows Runtime Component (C++) CreateDeviceAccessInstance & DeviceIoControl API Device Metadata SoftwareInfo.xml ,,,,,, <PrivilegedApplications> App Identity, AccessCustomDriver </PrivilegedApplications> Custom Driver Other Device Driver Package [OsrUsb_Interface_AddProperty] {Enable restricted interface} Microsoft Partner

demo DeviceIOControl SDK sample: accessing a custom device 11/8/2018 8:13 PM demo DeviceIOControl SDK sample: accessing a custom device WDK sample: OSRUSBFX2 OSR USB FX2 learning kit © 2010 Microsoft Corporation. All rights reserved. Microsoft, Windows, Windows Vista 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.

Recap

Recap Differentiate your specialized device with a Metro style app Windows 8 has four APIs families for Metro style apps to access the unique functionality of your device Many apps can access your device in the open device access model Device makers can control which Metro style apps access their device in the restricted device access model

Related sessions [HW-322T] Designing great devices and drivers [HW-283T] Introducing Metro style device apps [HW-275T] Building and delivering a great Metro style app for your device [PLAT-278T] Using connected devices in Metro style apps

Further reading and documentation Windows Dev Center home   SDK Samples Custom Device Access Portable Device Services Removable Storage Whitepapers Metro style Device App for Specialized Devices - Design Guide The Device Software Lifecycle – Deployment, Acquisition, Uninstall and Update Process Metro style Device App for Specialized Devices Custom Driver Access Design Guide Metro style Device App for Specialized Devices Custom Driver Access Development Guide Questions? Please visit the forums on the Windows Dev Center at http://forums.dev.windows.com For best response, please include the Build Session # in the title of your post

thank you Feedback and questions http://forums.dev.windows.com Session feedback http://bldw.in/SessionFeedback

11/8/2018 8:13 PM © 2011 Microsoft Corporation. All rights reserved. Microsoft, Windows, Windows Vista 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. © 2011 Microsoft Corporation. All rights reserved. Microsoft, Windows, Windows Vista 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.