Foreword by Chris Anderson xvii Foreword by Rey Bango xix Preface xxi Acknowledgments xxvii About the Authors xxxiii Chapter 1: Hello, Windows 8! 1 Your First Windows Store App 2 Getting Started in Visual Studio 2012 6 Controls, Binding, and Styling in Blend 16 Navigation 24 Networking in WinJS and WinRT 29 Split App Template 34 The Rest 40 Where Are We? 40 Chapter 2: Binding and Controls 41 Binding 41 Initializers 51 Binding List 53 Sorting and Filtering 55 Grouping 58 Templates 60 Controls 63 Where Are We? 78 Chapter 3: Layout 79 Layouts: Taming the Device Matrix 79 Using CSS Layout Capabilities to Adapt Your App 99 Creating Adaptive UIs with CSS and WinJS 104 Where Are We? 116 Chapter 4: Typography 119 Typography in Windows Store Apps 119 Working with Platform Iconography 136 Using and Manipulating Icon Fonts in a Windows Store App 147 Where Are We? 153 Chapter 5: Media 155 Working with Audio and Video 155 Getting Started with Media in Windows 8 156 Styling Media and Creating Custom Controls 159 Adding Subtitles to Video 163 Adding Video Effects 167 Working with Audio in Windows Store Apps 170 Working with User Media Libraries via a File Picker 175 Selecting Multiple Files 180 Other File Picker Types 182 Working with Captured Media 185 Making Your App Connectable with Play To 189 Where Are We? 192 Chapter 6: Drawing and Animation 193 HTML5 Graphics with SVG and Canvas 193 Manipulating Pixels 206 Animation in Windows Store Apps 212 Where Are We? 224 Chapter 7: App State 225 Settings 226 Lifetime 238 Files 252 Libraries 256 Where Are We? 266 Chapter 8: Networking 267 Network Capabilities 267 Mobile Networking 269 XMLHttpRequest 273 Syndication 277 Background Data Transfer 280 Web Content 284 Where Are We? 292 Chapter 9: Shell Contracts 293 The Windows 8 Shell 294 Contracts 295 Search Contract 297 Share Contract 305 Contacts Contract 322 Debugging Contract Providers 331 Where Are We? 332 Chapter 10: Shell Integration 333 Live Tiles 333 Badges 348 Background Tasks 350 Toast Notifications 358 Where Are We? 363 Chapter 11: Device Interaction 365 An Introduction to Touch 366 Working with Device Capabilities 380 Working with Location Data 387 Working with Sensors 394 Where Are We? 403 Chapter 12: Native Extensibility 405 Multiple Languages, One App 406 Getting Started 407 WinRT and the JavaScript Environment 411 WinRT Classes 413 WinRT Objects 421 WinRT Types in C++/CX and JavaScript 424 Delegates and Functions 435 Events 440 Concurrency and Asynchrony 443 Where Are We? 451 Chapter 13: Making Money 453 Preparing for Submission 454 Submitting Your App to the Windows Store 463 Working with Ads 476 Enabling Trial Mode in Your App 483 Working with In-App Purchases 488 Design for Monetization 495 Marketing and Managing Your App 496 Where Are We? 499 Appendix A: JavaScript for C-Family Programmers 501 Hello, World 502 Values and Types 507 Operators 508 Objects 510 Dates 511 Regular Expressions 511 Arrays 512 Object Prototypes ("Classes") 514 Functions 520 Debug Output 525 Scoping 526 Strict 529 Serialization 531 Appendix B: Presentation and Style at a Glance 533 Using HTML for App Content and Structure 534 Using CSS for App Layout and Style 541 CSS in Windows Store Apps 558 Index 565.
Building Windows 8 Apps with JavaScript