Chad McCallum ASP.NET/IIS MVP iQmetrix Software http://www.rtigger.com @ChadEmm / chadm@iqmetrix.com
Windows RT API  Windows Runtime is implemented at a low-level and then “projected” into C++, C#, VB, and JavaScript APIs  Allows the APIs to present the same functionality in a way that’s familiar to developers of that language
Native App in HTML?  Apps are run in an Internet Explorer 10 shell  This means:  Can include other JS libraries  HTML5 and CSS3 support for user interface  Can do (almost) anything you’d do with a web application
What are these apps called?  Windows Store apps  Acquired, installed, and updated via the Windows Store app  Packaged into an “.appx” file when submitted  Contains a manifest file that describes the app, the resources it uses (camera, network, etc.), and lists OS integrations (background tasks, file associations, etc.)
Windows Library for JavaScript  aka WinJS  Wrapper for Windows Runtime API  Provides:  Access to system-level resources  HTML implementation of WinRT controls, complete with CSS styling and events  CSS3-based animation framework  Helpers for common coding patterns
Not Quite a Web Page  Some DOM API calls are modified or unavailable, like alert or window.open  There are some methods, properties, and CSS queries that are specific to a Windows Store app  Allowed to make cross-domain requests, load resources from remote sources
Not Quite a Web Page  Not allowed to reference scripts remotely  IFrames are run in “web context” without access to WinRT  Some DOM-based calls are modified or removed (document.write, innerHTML)
App Container  Run within a dedicated environment that can’t access other applications and the system directly  Have unrestricted read/write access to their own appdata folders  Access to any other files or hardware goes through a broker, which can deny access
App Lifecycle  4-ish states  Starting: shows splash screen image, does all the app initialization behind the scenes  Running: active application on user’s device  Suspending: app has lost focus, 5 seconds to save state  Resuming: app has regained focus  Suspended: still in memory, but not allocated any CPU time  Terminated: removed from memory, effectively closed. OS triggers this at will, app is not informed
App State  When being “suspended”, Windows 8 gives your app approximately 5 seconds to save its state  Can save data as Temp, Local, and Roaming  Save as a file and/or key-value pairs  Always app-specific, as they’re saved relative to your app’s directory  Roaming settings are uploaded to user’s Microsoft Account and are accessible across devices
Code Time!

Windows 8 programming with html and java script

  • 1.
    Chad McCallum ASP.NET/IIS MVP iQmetrix Software http://www.rtigger.com @ChadEmm / chadm@iqmetrix.com
  • 2.
    Windows RT API Windows Runtime is implemented at a low-level and then “projected” into C++, C#, VB, and JavaScript APIs  Allows the APIs to present the same functionality in a way that’s familiar to developers of that language
  • 3.
    Native App inHTML?  Apps are run in an Internet Explorer 10 shell  This means:  Can include other JS libraries  HTML5 and CSS3 support for user interface  Can do (almost) anything you’d do with a web application
  • 4.
    What are theseapps called?  Windows Store apps  Acquired, installed, and updated via the Windows Store app  Packaged into an “.appx” file when submitted  Contains a manifest file that describes the app, the resources it uses (camera, network, etc.), and lists OS integrations (background tasks, file associations, etc.)
  • 5.
    Windows Library forJavaScript  aka WinJS  Wrapper for Windows Runtime API  Provides:  Access to system-level resources  HTML implementation of WinRT controls, complete with CSS styling and events  CSS3-based animation framework  Helpers for common coding patterns
  • 6.
    Not Quite aWeb Page  Some DOM API calls are modified or unavailable, like alert or window.open  There are some methods, properties, and CSS queries that are specific to a Windows Store app  Allowed to make cross-domain requests, load resources from remote sources
  • 7.
    Not Quite aWeb Page  Not allowed to reference scripts remotely  IFrames are run in “web context” without access to WinRT  Some DOM-based calls are modified or removed (document.write, innerHTML)
  • 8.
    App Container  Runwithin a dedicated environment that can’t access other applications and the system directly  Have unrestricted read/write access to their own appdata folders  Access to any other files or hardware goes through a broker, which can deny access
  • 9.
    App Lifecycle  4-ishstates  Starting: shows splash screen image, does all the app initialization behind the scenes  Running: active application on user’s device  Suspending: app has lost focus, 5 seconds to save state  Resuming: app has regained focus  Suspended: still in memory, but not allocated any CPU time  Terminated: removed from memory, effectively closed. OS triggers this at will, app is not informed
  • 10.
    App State  Whenbeing “suspended”, Windows 8 gives your app approximately 5 seconds to save its state  Can save data as Temp, Local, and Roaming  Save as a file and/or key-value pairs  Always app-specific, as they’re saved relative to your app’s directory  Roaming settings are uploaded to user’s Microsoft Account and are accessible across devices
  • 11.