Submitting apps to the Windows Store
While existing legacy desktop style applications can be distributed using the traditional methods (as described in the Creating installer packages recipe), the only way to distribute Windows Store apps will be via the Windows Store, and they must pass a certification process for that to happen.
Certification is the process by which Microsoft ensures that apps available in the Windows Store will meet certain performance and quality standards. As a developer, the Store makes it easy for customers to obtain and install your app. In this recipe, we'll look at how the certification process works. Since apps for Windows 8 can only be maintained at this point, we'll focus on creating a new app for Windows 8.1.
Getting ready
To start, you will need either VS Express for Windows or one of the premium editions of Visual Studio 2013 and Windows 8.1.
How to do it...
Perform the following steps:
Start a new project by navigating to Visual C# | Windows Store | Blank App (XAML).
From the menu, navigate to Project | Store and select Open Developer Account....
Tip
A Developer Account is different from a Developer License. The account is used to publish apps to the Windows Store. The license is used on your local computer for testing and developing apps. Microsoft has recently modified the Developer Account so that the same account can be used for both Windows Store apps and Windows Phone development.
A browser window will open and you can apply for a developer account using the process as outlined on the page. Windows Store accounts may require a payment of a small license fee, so have a credit card handy when you perform this step.
Once you have an account, switch back to Visual Studio, and from the menu, choose Project | Store | Reserve app name....
Again, a browser window will open, and you will be directed to the Windows Store to register the name for your application. Follow the process as described on that page.
From the Visual Studio menu, select Project | Store | Edit App Manifest and use the information from the app name reservation to populate the appropriate fields. Take particular note of the fields on the packaging tab.
Alternatively, you can select the Project | Store | Associate App with the Store... menu entry and follow the steps of the wizard to automatically populate the packaging tab with the appropriate values. This option will let you choose from a reserved app name as well as reserve a new name if needed.
At this point, you are ready to write your application.
Tip
Current Microsoft guidelines will allow an app name to be reserved for a year. If your app is not submitted by this deadline, the reservation will expire.
Verify your application using the Windows App Certification Kit. Refer to the Validating your Windows Store app recipe in Chapter 2, Getting Started with Windows Store Applications, to do this.
Package your application for uploading to the Store by choosing Project | Store | Create App Packages....
Next, upload the resulting package to the store by selecting Project | Store | Upload App Packages... from the menu and following the steps presented in the ensuing upload wizard.
Once the upload completes, you can monitor the progress of your package through the approval process using the tools provided by the Store.
How it works...
The Store submenu is only available when running Visual Studio in Windows 8 and when you have opened the solution for a Windows Store app. When you upload a package to the store, there are a number of basic sanity checks to verify if your package is acceptable and meets the requirements of the Windows Store. These checks include running the certification toolkit on your app and verifying the manifest information against the information you supplied when you registered the app name. Using Visual Studio's Associate app with the Store wizard is an easy way to make sure you don't have any typographical errors in your manifest. It also improves the chances of a successful first-time submission.
There's more…
Earning money with Windows Store apps is not limited solely to upfront purchase revenues. You may also distribute your app using a trial mode that encourages a try-before-you-buy approach. Apps may include the ability to support in-app purchases and in-app advertising using your choice of ad platforms, and it may implement a custom transaction system if you so desire.
Tip
For in-app purchases and trial versions of your product, Microsoft bundles supporting functionality in the Windows.ApplicationModel.Store
namespace to make it easier for you to build applications with these features. A sample app is available using these features here: http://code.msdn.microsoft.com/windowsapps/Licensing-API-Sample-19712f1a
If you want to confirm what the requirements are for App certification, refer to the Microsoft documentation on the subject at http://msdn.microsoft.com/en-us/library/windows/apps/hh694083.aspx.
Sideloading
The Windows Store makes public distribution of applications very easy, but certain line-of-business or custom apps will not want to take this approach. Sideloading is the process by which developers can bypass Store restrictions and avoid public distribution for the corporate/enterprise market. For information on this approach, refer to http://technet.microsoft.com/en-us/library/hh852635.aspx.
See also
The Packaging your Windows Store app recipe in Chapter 2, Getting Started with Windows Store Applications
The Validating your Windows Store app recipe in Chapter 2, Getting Started with Windows Store Applications