Windows 8. Experience publishing applications in the Windows Store

    Windows Store

    Hi everyone, this article is about our experience publishing desktop and WinRT applications in the Windows Store. At the moment, one WinRT application and two regular ones are published and available in the store. A few more are under development and publication.



    Intro


    It so happened that I have gained 3 years of experience publishing applications for various "alternative" ecosystems. During this time, I got to know the certification process of Sony, Nintendo, Samsung Bada, Intel AppUp, Blackberry, Nokia Ovi, Windows Phone Marketplace and now the Windows Store. About the features of the latter, this article.
    First, a little about the applications that we publish. These are small games for a casual audience. The most famous of them are Farm Frenzy and the Treasures of Montezuma. For 13 years now we have been publishing our games on almost all new and popular platforms. Those who want to know more can look through our blog or go to our website .

    Publishing a WinRT Application


    This story began back in the days of the Consumer Preview. At one point, it was decided to start development on the WinRT platform for the new version of Windows, with an eye on the application store. Microsoft had a special term for such applications: Metro style applications. However, in the light of recent events , the term WinRT will be used below.
    Here it must be clarified that full publication in the store of the new OS is possible only for WinRT applications. Desktop applications can only be "flipped" (I apologize for the tracing-paper), i.e. post descriptions / screenshots and URLs on the developer's site. Issues with sales, content delivery, problems with users and similar infrastructure tasks are solved exclusively by the developer.
    The main part of the development was completed in two months, in parallel negotiations were held with Microsoft about the possibility of early publication. The negotiations ended successfully, not least thanks to the support of the Microsoft Russian office staff, for which many thanks to them.
    And now the invite has been received, the account has been opened, the game is ready and you can start publishing. We will not go into the details of the publication, they are described in detail, for example, here .
    Also about it on Habré many articles in a blog of Microsoft are written ( for example ).
    I’ll go straight to the most interesting part, namely the rake that I had to step on.

    Rake



    Certification Report


    If the certification is successful, then good. But if not, then understanding why is often very difficult. The fact is that the report does not contain indications of specific places in your application where the error occurred, not to mention the playback steps. In the report there is only an item from the requirements that is violated. Here is a typical report:

    Winstore report

    The requirements are formulated quite abstractly, for example, “1.1 Your app must offer customers unique, creative value or utility in all the languages ​​and markets that it supports”.
    Honestly, this is the first time we have encountered this approach. After all, this means that the developer must essentially guess what is wrong with the application. And if the error does not always occur and requires a certain sequence of user actions?

    Privacy policy


    In our case, we added support for the Share Contract mechanism to the application. This is a layer built into the system between the social. networks and applications, i.e. the user can post results to facebook and / or twitter, etc. with one button. It is assumed that this will ease the heavy user burden, as well as the burden of developers who will now work with a single API. So, from the point of view of Microsoft, this violates paragraph 4.1. (In the latest edition, they divided it into two subitems, apparently such a problem often occurred. At the time when we ran into this item, it sounded like this: “4.1 Your app must obtain opt-in or equivalent consent to publish personal information”. )
    Those. It turns out, firstly, that our application collects personal information of the user (this is not so), and secondly, publishes it without his knowledge. At the same time, everything was in order with the Privacy Policy, on the application page in the store there was and there is a link to the document.
    Letters of support and communication with Microsoft representatives for a couple of days did not help. It seems that the certification team is doing this according to some criteria that are not always obvious.
    As a result, the problem was solved by removing Share.
    Later it turned out that it was necessary to add support for another contract, namely Settings, and in it add a link to the Privacy Policy.

    Low-power computer


    Another problem that we encountered during the certification process is a violation of clause 3.8 (Your app must meet the basic performance criteria on a low-power computer).
    Microsoft does not give a clear definition of what a “weak” computer is. There are only common words: "such as an Intel Atom processor-based computer with a screen resolution of 1024x768 (or higher) and a rotational hard drive (as opposed to a solid-state hard drive)." It is already embarrassing that not a word is said about ARM, although in fact this paragraph is just about ARM.
    Before receiving the report, we tested on the weakest desktop machine that we could find in the office. As it turned out, this was not enough.
    As a result, we found a netbook on Intel Atom, with a resolution of 1024x600, but a connected external monitor. It was funny to control the toy on the internal monitor when the picture is on the external. But the certification has passed.

    Windows Store Account Creation and Security


    The account in the store is tied to an e-mail address. To one. Therefore, it is best to immediately make it a mailing list. Many people will need access to the store: both the programmer when building the application and the content manager for editing texts and the accountant for collecting financial information. It’s impossible to differentiate access areas within an account - everyone has access to everything.
    In this regard, the best security situation for consolers. This is the range of IP addresses assigned to the company and a separate individual login / password for each person. Plus access control by role. Plus logging for each action, who changed what and when. Thus, an accountant can safely give access to an account with read permissions for fin. statistics, not afraid that he might accidentally delete the application.
    Among other things, at each authorization in the store you will be checked that you have access to the e-mail account:

    Email Code Request

    Usually, the coveted code arrives within 5 minutes, but there was a case when you had to wait several hours.
    Of course, there are alternative options. Firstly, you can receive the code by SMS. Secondly, you can use "trusted PC", but this requires at least Internet Explorer latest version.

    Lack of information


    We carefully read the contract that each developer must sign in the process of creating an account. There is one controversial point: Microsoft is going to collect and transfer sales taxes to the tax authorities, which the agent usually does not collect (VAT and sales tax). And only in some countries, in the rest you need to pay taxes yourself.
    For this item in the contract there is a reference to MSDN - "For additional tax information and requirements please see MSDN". MSDN search did not return any results. We wrote in support, we are waiting for an answer.
    The same situation is with the UI of the store itself, where often Learn more links lead to Coming soon stub pages, with a suggestion to search on MSDN.

    Microsoft support


    Imagine that you have a question for which you, having previously searched in MSDN and Google, did not find a satisfactory answer. Then you need to go straight to Microsoft Support, namely getsupport.microsoft.com .
    Support itself works quite well, no worse than that of competitors. In most cases, answers come within 24 hours. The guys work the same that answer on the forums. Yes, of course it happens that the answer is not to the question that is asked, but to the one that is convenient to answer, but you can’t do anything about it - everywhere it is. Yes, support works in English and US time.
    However, there are two nuances with support that you should know about.
    Firstly, when a ticket is opened via a web form, it sometimes throws out a login / password request, while the typed ticket text is lost. Therefore, before pressing the treasured button, it is best to save the text at least in the buffer.
    Secondly, answers from support do not contain a history of correspondence. Those. in the answer you will see your last comment and the answer to it, but not the initial question and all correspondence after.

    Desktop Application Publishing


    Publishing a desktop application was even easier and faster than on WinRT. All that was needed was a VeriSign digital certificate and a WACK test. The resulting report is uploaded to Microsoft and the application becomes available for publication.
    The process is described in detail, for example, here .
    It is worth noting that the process of checking for a WACK desktop application takes longer than checking a WinRT application and can easily take more than 20 minutes, especially if the verification takes place on a "weak" computer, according to the recommendations of Microsoft.

    conclusions


    In general, the publishing process in the Windows Store is quite transparent, with the exception of some points related to growth diseases. We passed the WinRT certification of the application from the second time, and the desktop - in general, from the first. I hope our experience is useful to someone. If you have any questions, welcome to comment!

    Also popular now: