1 / 36

Prepare your apps for Windows 8 and beyond

APP-116T. Prepare your apps for Windows 8 and beyond. Uday Shivaswamy Senior Program Manager Microsoft Corporation. Agenda. What is new in Windows 8 that impacts compatibility Compatibility best practices for d esktop a pps Compatibility features for Metro style a pps

chantal
Download Presentation

Prepare your apps for Windows 8 and beyond

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. APP-116T Prepare your apps for Windows 8 and beyond UdayShivaswamy Senior Program Manager Microsoft Corporation

  2. Agenda • What is new in Windows 8 that impacts compatibility • Compatibility best practices for desktop apps • Compatibility features for Metro style apps You’ll leave with an understanding of how to • Build great desktop apps • Assess and certify your desktop apps • Assess your Metro style apps

  3. Why is compatibility important?

  4. What is new in Windows 8 that impacts compatibility

  5. Windows 8 is compatible with apps that run on Windows 7

  6. Changes in Windows 8 that impact compatibility • Windows OS version increment • Desktop Window Manager always on • Startup apps change • .NET 3.5 on demand

  7. How many of you have a Windows version check in your app?

  8. Windows OS Version Increment Only the OS minor version incremented

  9. Desktop Windows Manager always on Compatibility for existing apps is maintained

  10. demo DWMFlight Simulator 2002

  11. Startup Apps Change Users can disable or enable them easily

  12. demo Startup apps

  13. .NET 3.5 on demand Windows 8 has .NET 4.5 by default

  14. demo .NET 3.5 on demand

  15. Compatibility best practices for Desktop apps

  16. Best Practice: Develop Great Installers This is your customer’s first experience with your app

  17. Best Practice: use Windows resources wisely Build great desktop apps

  18. Windows System usage samples • Using path variables: • LOCAL nKey, cSubKey, cValue, lSuccess, cExpandPart, cNonExpandPart • nKey= HKEY_LOCAL_MACHINE • cSubKey= "Software\VfpRegTest" • cValue= "TestREG_EXPAND_SZ" • cExpandPart= "WINDIR" • cNonExpandPart= "\System“ • lSuccess= WriteREG_EXPAND_SZ(nKey, cSubKey, cValue, cExpandPart, cNonExpandPart) • IF (lSuccess) • THEN • =MESSAGEBOX("Value was Written to the Registry.") • ELSE • =MESSAGEBOX("Value was not Written to the Registry.") • ENDIF

  19. Windows System usage samples • HRESULT verification macros (Accessing a known folder): • IShellItem* pItem = nullptr; • HRESULT hr = ::SHCreateItemInKnownFolder( • FOLDERID_Libraries, 0, nullptr, IID_PPV_ARGS(&pItem)); • if (SUCCEEDED(hr)) • { • DWORD dwAttr = 0; • hr = pItem->GetAttributes(SFGAO_FILESYSANCESTOR, &dwAttr); • if (SUCCEEDED(hr)) • { • if (SFGAO_FILESYSANCESTOR == dwAttr) • { • wprintf(L"Item is a file system folder\n"); • } • } • pItem->Release(); • }

  20. Best practice: manifest Your executable Build great desktop apps

  21. Trust info • <?xml version="1.0" encoding="utf-8"?> • … • <trustInfoxmlns="urn:schemas-microsoft-com:asm.v2"> • <security> • <requestedPrivilegesxmlns="urn:schemas-microsoft-com:asm.v3"> • <requestedExecutionLevel level=“AsInvoker" uiAccess="false" /> • </requestedPrivileges> • </security> • </trustInfo>

  22. Compatibility section • Compatibility • <?xml version="1.0" encoding="UTF-8" standalone="yes"?> • <assembly xmlns="urn:schemas-microsoft-com:asm.v1" manifestVersion="1.0"> • <compatibility xmlns="urn:schemas-microsoft-com:compatibility.v1"> •     <application> •        <supportedOS Id=“{Windows 8…GUID}"/> •        <supportedOS Id=“{Windows 7…GUID}"/> •          <supportedOS Id="{Windows Vista…GUID}"/> •       </application> • </compatibility> • </assembly>

  23. DPI section • <assembly xmlns="urn:schemas-microsoft-com:asm.v1" manifestVersion="1.0" xmlns:asmv3="urn:schemas-microsoft-com:asm.v3" > • <asmv3:application> <asmv3:windowsSettings xmlns="http://schemas.microsoft.com/SMI/2005/WindowsSettings"> • <dpiAware>true</dpiAware> • </asmv3:windowsSettings> • </asmv3:application> ... </assembly>

  24. Certify Your desktop app • Windows App Certification Kit • Formerly Windows Software Logo Kit • Ensures consistent, high-quality user experience • Opportunity to get listed in the Windows Store • Get listed on the Windows Compatibility Center

  25. demo Windows app Certification Kit

  26. Compatibility features for Metro style apps

  27. Declaring Compatibility for Metro style Apps • App must declare the Windows version it needs • Windows provides the best compatibility behavior for the app • OSMinVersion is the minimum OS version needed for app install • OSMaxVersionTested is the latest OS version app is tested for

  28. Declaring compatibility in the Appx Manifest • As part of app manifest • <Prerequisites> • <OSMinVersion>6.2</OSMinVersion> • <OSMaxVersionTested>6.2</OSMaxVersionTested> • </Prerequisites>

  29. Assess your Metro style app • Ensures consistent, high-quality user experience • Single tool for self-testing and store onboarding • Prepared for a global market • Automated tests for: • App Manifest compliance with store policy • Image sizing and scaling • Use of platform supported APIs • App reliability and security

  30. Summary

  31. Call to action • Desktop apps • Verify your app against Windows 8 changes • Manifest your executables • Certify your app for Windows 8 • Automatically listed in the Windows Compatibility Center • Metro style apps • Learn about version declarations • Verify your app with the Windows App Certification Kit

  32. Related sessions • [HW-716H] (lab) Windows compatibility and readiness labs for devices and apps • [APP-840H] (lab) Hands on lab for Windows App Certification Kit • [APP-842H] (lab) HOL: Using the Windows App Certification Kit to validate and prepare your Metro style apps for the Store

  33. Further reading and documentation • Windows 8 App Compatibility Cookbook • Windows Compatibility Center • Contact info – srglabs@microsoft.com

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

  35. © 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.

More Related