Please note that as of October 24, 2014, the Nokia Developer Wiki will no longer be accepting user contributions, including new entries, edits and comments, as we begin transitioning to our new home, in the Windows Phone Development Wiki. We plan to move over the majority of the existing entries over the next few weeks. Thanks for all your past and future contributions.
Points to consider before submitting an app to the Windows Phone Store
This article is intended to expose relevant points of guidance for those who want to test and submit applications on Windows Phone store.
The development of a Windows Phone application is in practice where a professional spends more time, however, nowadays the design of the UI and the test for application submission in the Store are points that need more attention by the professional. The quality of an application is a success factor. What you will learn:
- Testing XAP using Windows Phone Marketplace Test Kit
- Tips for Certification
- Official references for certification requirements
- An overview from the certification process
Testing XAP using Windows Phone Marketplace Test Kit
After the application development, it must be subjected for testing. The functional tests must be performed to ensure that the features are presented to the user accordingly. However, it should be taken into consideration all the features and requirements that Windows Phone requires.
Suppose that the application is in a state: "OK can be submitted." Being a bit pragmatic, is it really ready to submit? Didn´t you forget something?
In order to confirm that the application is actually completed, use the "Windows Phone Marketplace Test Kit" to ensure that the minimum requirements are achieved. Often is the first filter in the detection of common problems / errors that usually occurs. This kit is included in the SDK, therefore is not necessary additional installation.
In Visual Studio 2012, on the top menu, in "Project" menu, can be found the "Open Store Test Kit" option
Alternatively, if you select the Windows Phone project (no matter if is a Windows Phone OS 7.1 or Windows Phone OS 8 project), click the right button of the mouse and then you will find the "Open Store Test Kit ..." option.
When opening Test Kit, you will realized the following:
Application Details, show the XAP's path that will be analyzed:
Important, the XAP file should be in Release mode, since only the applications in Release mode can be submitted.
You have to insert the image that will be displayed in the store as the pictures of the application instance, consider the example of Girl Geek Dinners application:
The images will be uploaded later in the submission process of the application.
Notice that we put the sample pictures for the various resolutions, as you can see in the following image:
1. One recommendation that usually is done, is to create a folder with the name ArtWork, with all the images needed for the application.
- Please note that the Images folder and Assets must then be included in the project application, as you can see in the following pictures:
2. In “Manifest” file is necessary to define some images that will be included in the XAP. The file is in the folder "Properties" under the name "WMAppManifest.xaml."
When you open this file, we will have an interface that allows us to set each image, we see the next picture which is the practical case of Girl Geek Dinners application.
Automated Tests allow to run the tests that will examine the XAP and required images, in automatic way.
For analyze with "Start Windows Phone Application Analysis" is recommend reading the Nokia Wiki Article: Techniques for memory analysis of Windows Phone apps
Manual Tests contains a list of tests that can be done and each one has the steps required to perform the test.
This list focuses on the requirements of the certification process, for this reason should not be ignored!
In conclusion, Windows Phone Marketplace Test Kit has three distinct tests that represent:
- Aplication Details: show the absolute path to the XAP file that is used for analyze and fields to insert the image that will be displayed in the store and the screenshots from the aplication.
- Automated Tests: Automatically checks possible errors.
- Manual Testes: A list of manual tests that can be checked.
- Requirements for certification of the various images (screenshots, the application icons and background image);
- Usage for Back button;
- Inappropriate use of the API;
- Memory usage and performance;
- Unexpected errors;
- The “Manifest” file
Windows Phone Store Test Kit is a tool from Microsoft, the official article is: MSDN - Windows Phone Store Test Kit .
Tips for Certification
- The maximum size of the XAP package file is 225 MB;
- The <Title> element in the WMAppManifest.xml file must contain the application title. The <Title> element must not be empty. An application must include the application name, version information, and technical support contact information that are easily discoverable. Normally is created the About Page for show that information
- Images mandatory, have specific names and sizes to take in consideration;
- The app list icons and ‘pin-to-start’ icon should not be default/generalized Windows Phone icons: they should be your personalized icons. The app icons must accomplish with the mandatory dimensions.
- The app’s screenshots that you submit should not include any part of the emulator – only the app content should be seen clearly. The screenshots must have the required dimensions and should be in non-transparent PNG format. Also note that graphically enhanced screenshots are not accepted.
- The application must not invoke native code via PInvoke or COM interoperability;
- XAP file must be in Release mode and cannot contain debugging symbols or output;
- The capabilities must be well defined; ( for more informations you should read [MSDN - How to: Determine Application Capabilities])
- If the if UltimateResourceFallbackLocation.Satellite is missing the applications certification fails, for solve it, add in AssemblyInfo.cs the following:
[assembly: NeutralResourcesLanguage("pt-PT", UltimateResourceFallbackLocation.Satellite)]
Note: In this case, is used "pt-PT" but is only an example.
- Application that supports devices with 256mb of memory, will be tested. If the application do not meet the requirements, it will fail in certification process.
- You need to prevent when the application closes unexpectedly. For help in this point is recommended to see more about it: Introducing RadDiagnostics for Windows Phone
- Go to settings and change the theme from Dark to Light or Light to Dark. Application content, such as text and visual elements, must be visible and legible regardless of the phone theme.
Official references for certification requirements
Is recommend reading the requirements of the certification process, which are divided into the following categories:
- App policies for Windows Phone
- Content policies for Windows Phone
- App submission requirements for Windows Phone
- Technical certification requirements for Windows Phone
- Additional requirements for specific app types for Windows Phone
Last updates can be found in this article: App certification requirements change history for Windows Phone