planningYou’re building great functionally into your apps but don’t forget to the features that will make it shine on Windows 8.

Some of windows 8 features are new concepts. As developers we need to become familiar with them and learn when and how to use them. Windows 8 has new features such as contracts, personalization, and different views. Using these features will make your app more metro and will help it shine, some of these concepts require mastery to get published in the store. In this post I’m going to give you a checklist of features you should think about during design and development on the Windows 8 platform.

 

Windows 8 life cycle

lifecycleIt's important to understand the life cycle process of windows 8 and handle this in your code. When a user taps on an application to launch it, it is activated and enters Running mode. If the user closes the application it will be terminated. But what if the user user hits the Windows key and launches another application, or simply navigates to another application? In this case, the previous application will go to Suspended mode. In suspended mode, the application does not consume any CPU,but it will lose state, so you may need to add code to remember state when the app enters the suspended state. You will also want to add code in the Activated event handler to reload state when the user returns to the application

 

         

Contracts

             
Search
Implement search contract
Let your users quickly search through your app's content from anywhere in the system, including from within other apps. And vice versa. For more info, see Adding search.
Share Implement Share contract
Let your users share content from your app with other people through other apps, and receive shareable content from other people and apps, too. For more info, see Adding share.
play to Implement Play To contract
Let your users enjoy audio, video, or images streamed from your app to other devices in their home network.For more info, see Streaming media to devices using Play To.
filepicker File picker and file picker extensions
Let your users load and save their files from the local file system, connected storage devices, HomeGroup, or even other apps. You can also provide a file picker extension so that other apps can load your app's content.

For more info, see App contracts and extensions.

Different views

Full Full Screen  View - App fills entire screen
Snip Snap View  - App is snapped to a narrow region of the entire screen
Fill Fill View - App fills remaining screen area not occupied by the app in the snapped state.
IC536102 - Copy Landscape View
IC536102 Portrait View

For more info, see Supporting multiple views and Choosing a layout.

Engaging the user

notifcation Toast notifications
Let your users know about time-sensitive or personally relevant content through toast notifications and invite them back to your app even when your app is closed.Learn more about tiles, badges, and toast notifications. move to the 3rd app
livetiles Secondary tiles
Promote interesting content and deep links from your app on the Start screen, and let your users launch your app directly into a specific page or view.Learn more about secondary tiles.
metro App tiles
Provide fresh and relevant updates to entice users back into your app.Learn more about app tiles.
more up
animation Animation
Use our library of animations to make your app feel fast and fluid. Help users understand context changes and tie experiences together with visual transitions. Learn more about animating your UI.

Personalization

settings Settings contract
Let your users create the experience they want by saving app settings. Consolidate all of your settings under one roof, and users can configure your app via a common mechanism that they are already familiar with.Learn more about Adding app settings.
Roaming Roaming
Create a continuous experience across devices by roaming data that lets people pick up a task right where they left off, and preserves the UX they care most about, regardless of the device they're using. Make it easy for users to use your app everywhere, from their kitchen family PC to their work PC to their personal tablet, by maintaining settings and states with roaming.Learn more about Managing application data and see Guidelines for roaming application data.
livetiles User tiles
Make your app more personal to your users by loading their user tile image, or let the users set content from your app as their personal tile throughout Windows.

Device capabilities

touch Touch gestures
Let your users connect devices, by physically tapping them together, to light up experiences where you expect multiple users to be physically nearby (multiplayer games). Learn more about proximity and tapping.
camera Cameras and storage devices
Connect your users to their built-in or plugged-in cameras for chatting and conferencing, recording vlogs, taking profile pics, documenting the world around them, or whatever activity your app is great at. Learn more about Accessing content on removable storage.
Accelometer Accelerometers and other sensors
Devices come with a number of sensors nowadays. Your app can dim or brighten the display based on ambient light, or reflow the UI if the user rotates the display, or react to any physical movement. Learn more about sensors.
geolocation Geolocation
Use geolocation information from standard web data or from geolocation sensors to help your users get around, find their position on a map, or get notices about nearby people, activities, and destinations.Learn more about geolocation.

Other

semantic Semantic zoom if you have more than 4-5 groups.
Semantic zoom makes scanning and moving around a view fast and fluid, especially when the view is a long panning list.
offline1 Offline mode
Users to have better experience using your app, then your app should supports an offline mode where your application will load previous data.
appbar2 Commands for a particular view/ page are in the App bar
The app bar contains transient access to commands relevant to a particular view.
screen sizes Scale to different  screens resolution
Design an app UI that looks great on devices of various sizes—from a small tablet screen, to a medium laptop screen, and all the way up to a large desktop or all-in-one screen. See Guidelines for scaling to screens.

 

For more information on what to consider when designing a Windows 8 app refer to the Detailed UX guidelines for Metro style apps. Happy coding!