Introduction

The Windows Store is the primary way of deploying an app and the only way for the Windows 8 population at large to access and load your app. However, not just any app can make it into the Store. Before your app will be accepted and made available to the world, you must meet design considerations and expectations, as well as reach technical specifications. This lesson explores some of the primary considerations of design and technical function, as well as the steps its takes to prepare your app for distribution and uploading for certification.

Lesson Objectives
By the end of this lesson, you will be able to:
  1. Design an app that fulfills Microsoft's overriding principles and design standards.
  2. Brand an app with logos and splash screen of the required size and link them in the manifest.
  3. Test an app for technical compliance using the Windows App Certification Kit.
  4. Prepare an app for Store submission by creating the app package and screen shots.
 

Learning Sequence
Required Readings
Read the following:
  • Microsoft's Overriding Principles
  • Designing for the Store
  • Branding: Name, Logos and Splash Screens
  • Setting Up the Manifest
  • Testing With the Windows App Certification Kit
  • Submitting the App to the Windows Store
Resources
Assignments
Complete the following:
  • Quiz 10
  • Assignment 10A (Final Project)
 

Instruction

With Windows 8, Microsoft has decided to follow Apple and Google in building a store as the primary location to obtain software for the Windows 8 operating system. While devices with processors that allow for the Windows 8 desktop can still have desktop applications installed the traditional way and obtained directly from the developer, the Windows 8 Start screen environment (which some have dubbed "Tile World") only allows apps to be installed for the general population from the Store.

There is a secondary way of deploying apps called "side-loading" for enterprise companies. For example a retailer might want an app that would be used only by their employees, but would not available to their customers or the general public. This lesson will only focus on Store deployment, as side-loading requires additional licensing and an enterprise developer's license ($299/year) to produce the app package. Accordingly, doing this hands on in this educational environment is really not feasible. Plus, if you have a Windows RT device, that device will require additional Microsoft licensing.

Now, you will learn more about deploying to the store. First, one must have a developer's license, obtain an application-ID, and reserve the app's name since the Store requires every app to have a unique name. An app must meet certain technical specifications and conform to design considerations. An add-on product, the Windows App Certification Kit (WACK) is available to pretest an app for meeting the technical requirements. It is the same tool that is used by the Store to verify your app is certifiable. But that is only half of what is completed, as human testers evaluate each app's design to ensure that certain features and design protocols are maintained. An app also must: have its manifest in order; provide a privacy policy if it collects user data, utilizes the Internet, or accesses data on the user's device; and contain the appropriate logo and splash screen images.

Familiarize yourself with Microsoft's Design Guidelines at "Index of UX guidelines for Windows Store apps" from the Windows Dev Center – Windows Store Apps website. The wise developer will familiarize himself or herself with the contents of this page, which contains design and usage details about all controls and features of the Windows 8 environment. A PDF of over 300 pages with this information is available as well by clicking the "Download" button (seen in Figure 1).


Figure 1 – Screen shot of Microsoft's user experience (UX) guidelines web page. Note the index on the right covers specific about every control and feature.

Microsoft's Overriding Principles

Microsoft provides specific guiding principles for apps to become certified and be distributed in the Windows Store. Detailed information is available at "App certification requirements for the Windows Store" from the Windows Dev Center – Windows Store Apps website, but here are the overriding six principles:

  1. The app must provide a value to the customer.
    The app should be complete and fully functional—it should not be under construction. Microsoft seeks the best experience for its users and thus the app should provide a good experience. It should offer something of use and utility.
  2. It must be more than an advertisement.
    While an app may contain ads, apps which are nothing more than advertisements will be rejected as will be those whose purpose is to provide links to a website. The primary activity of the app must take place within the app itself.
  3. The app must behave predictably.
    It should function the same on all its targeted processors and operating systems. It must support touch, mouse, and full keyboard input. It must reasonably suspend and resume. It must conform to standard Application Lifecycle Management procedures and should not contain an option to programmatically close the app. It must function at a minimal size of 1024x768 and resize appropriately to other standard landscape sizes. It may not use externally-accessible scripts and must not interfere with other standard Windows 8 processes. Windows 8 UI design standards should be utilized, such as searching features should be accessible from the Charms bar using a Search contract.
  4. The app should put the user in control.
    A privacy statement must be provided if the app accesses the Internet. If the app accesses personal information, the user must be asked to opt-in.
  5. The app is appropriate to a global audience.
    The content of the app must adhere to Microsoft's content and age ratings guidelines. It must not contain content that is defamatory, slanderous, or libelous. It cannot promote hate or illegal activity and must not glamorize violence, guns, or the irresponsible use of alcohol, tobacco, or drugs.
  6. The app must be easily identified and understood.
    The app must have a unique name. It must be listed in at least one geographic market and should be localized for the languages of all markets listed. It must be appropriate for the category and subcategory under which it is listed. At least one screen shot shall be provided and shall be a PNG file with a resolution of 1366x768 pixels.

Designing for the Store

While an automated program called the Windows Application Certification Kit (WACK) is used to ensure technical conformation, human testers evaluate the submitted app's design, usability, performance, and worthiness.

Here's a brief checklist of some design considerations:

 Strive to use the Segoe font family.

 Use a title header that is 120–140 pixels in height.

 Maintain a left margin of 120 pixels in full landscape view.

 Maintain at least 20 pixels between interactive controls.

 Provide alternative designs or modifications for filled and snapped views. If the app will support portrait orientation, it must provide alternative screen design for that state.

Manage data persistence to provide a continuous experience if the app is terminated and then re-activated.

In this lesson, the user interface of the Take Me Out to the Ballgame assignment will be modified for Store deployment.

Review "Designing for the Store" section in the Lesson 10 Guide for detailed information and examples.

Branding: Name, Logos, and Splash Screens

While it is important to keep technical requirements and guidelines in mind, branding is a critical element that affects the success of an app in the Windows Store. Branding involves choosing a name and designing logos and splash screens for your app.

Review "Branding: Name, Logos, and Splash Screens" section in the Lesson 10 Guide for detailed information and examples.

Setting Up the Manifest

The next step is to specify the name, background color, and graphics in the manifest document. Open the package.appxmanifest. Provide a name, default language if other than U.S. English, a brief description, and choose the supported rotations. Remember, while the name can be up to 256 characters, it is preferable to keep it short.

Review "Setting Up the Manifest" section in the Lesson 10 Guide for detailed information and examples.

Testing With the Windows App Certification Kit

The Windows App Certification Kit (WACK) is available free of charge from Microsoft. This tool is used to analyze your app after submitting it to the store to verify that it meets the technical qualifications. WACK examines the manifest to ensure that it is correctly setup and that all necessary capabilities and declarations have been established. It confirms that the image resources for the logos are present in the package. The WACK also checks the stability of the app¯testing for crashes and errors. It also verifies that the app can be suspended and re-launched without issue.

Review "Testing With the Windows App Certification Kit" section in the Lesson 10 Guide for detailed information and examples.

Submitting the App to the Windows Store

You will need to open a Developer account on the Windows Store to upload your project to the Store. This carries a cost of $49 for an individual account or $299 for a corporate account. Students of DreamSpark institutions may obtain a free license through the DreamSpark site.

Finally, to submit the app to the store, you will need to follow several steps that involve decisions regarding the cost of your app, which screenshots to include, and more..

Review "Submitting the App to the Windows Store" section in the Lesson 10 Guide for detailed information and examples.

Practice

Choose any of the previous projects in this course and perform the following:

Assignments

Complete the following:

Summary

There is still a lot of work to do even after the app is fully coded, tested, and debugged before it can be available in the Windows Store. A developer account at the Microsoft Store must be secured and there is an annual fee. Logos and a splash screen are required and must conform to specific sizes. The manifest needs to include up-to-date information with the correct name and publisher. It also requires capabilities and declarations and links to the logos and splash screen. The app should be tested for technical standards using the Windows App Certification Kit (WACK). If it fails the WACK test, it will not be accepted to the Store. App Packages need to be created for download and installation from the Store. Screenshots are taken from the Simulator and will be used to provide details about your app. Optional promotional images may be created and uploaded, which may help with the app being featured in the Store. The app must be associated with the Store, and then information must be specified about the app in the Dashboard of the developer's account. When all this is completed, the app is submitted for review. It may take up to 5 or 6 days for the app to be reviewed and made available if accepted.


Course Information

Additional Attributions

Creative Commons License

This work is created by the National Information Security and Geospatial Technologies Consortium (NISGTC), and except where otherwise noted, is licensed under the Creative Commons Attribution 3.0 Unported License