5 советов по ускорению сертификации приложений

Приступая к разработке Магазина Windows, мы с самого начала рассматривали его как одно из основных средств развития партнерских отношений между разработчиками и корпорацией Майкрософт. Мы сделали все возможное, чтобы сделать наши требования к сертификации и сам процесс отправки приложений максимально простыми и понятными. Это, несомненно, поможет вам, разработчикам, создавать на радость пользователям высококачественные и эффективные приложения. В этой записи блога мы хотели бы более подробно остановиться на некоторых особенностях процесса отправки приложений. Мы также дадим вам ряд рекомендаций, чтобы помочь ускорить прохождение данного процесса. Автором этой записи является Гас Саллум (Gus Salloum), руководитель программы.

-- Антуан


Чтобы приложение было опубликовано и включено в каталог Магазина, оно должно соответствовать сертификационным требованиям Магазина Windows. Эти требования помогают гарантировать, что приложения в Магазине Windows обладают высоким качеством и их взаимодействие с системой соответствует ожиданиям пользователей. Новейшая версия этих требований сертификации всегда доступна в Центре разработки. Там же имеется журнал изменений, который поможет вам ознакомиться с динамикой этих требований во времени.

В течение последних недель мы отслеживали причины, по которым приложениям не удавалось пройти сертификацию. При этом нам удалось выделить несколько типичных примеров. Чтобы облегчить процедуру отправки вашего приложения в Магазин, мы хотим предоставить вам руководство по требованиям и процессам сертификации, которые, как оказалось, могут вызывать некоторые затруднения. Мы предложим также ряд рекомендаций по ускорению процедуры отправки приложения в Магазин.

По необходимости публикуйте политику конфиденциальности

Соблюдение конфиденциальности является ключевым элементом наших обязательств перед пользователями. Очень важно, чтобы наши с вами общие клиенты были уверены в безопасности использования приложений, полученных из Магазина Windows. Нами уже делалось заявление относительно политик конфиденциальности после того, как соответствующие требования были впервые опубликованы в декабре 2011 г. А недавно мы подготовили по этому поводу дополнительные пояснения, чтобы помочь разработчикам в удовлетворении данного требования. Это требование имеет теперь следующую формулировку:

Если приложение имеет сетевые возможности, оно должно содержать заявление о конфиденциальности

Мы внесли данное изменение, поскольку хотим, чтобы пользователи не опасались за безопасность своих персональных данных, предоставляемых в ваше распоряжение. Любое приложение, подключающееся к сети, обладает возможностями для передачи персональных данных. Вот почему мы просим и даже требуем от вас соблюдения политики конфиденциальности, если в вашем приложении объявляется о поддержке следующих возможностей:

  • internetClient;
  • internetClientServer;
  • privateNetworkClientServer.

Ваше заявление о конфиденциальности объясняет пользователям, какие персональные данные передаются вашим приложением и как осуществляется хранение этих данных и управление ими. Если в вашем приложении поддерживается реклама, в политике должны описываться персональные данные, передаваемые поставщику рекламы. В случаях, когда ваше приложение не передает персональные данные, просто сообщите об этом в заявлении о конфиденциальности.

Напомним, что есть два места, где следует предоставить доступ к политике конфиденциальности:

  • в чудо-кнопке "Параметры" вашего приложения (она будет доступна пользователям при работе с приложением);
  • на странице описания вашего приложения на информационной панели при отправке приложения (пользователи видят эту страницу перед тем, как приобретут ваше приложение).

Отправляйте действительно ценные приложения

В сертификационном требовании 1.1 указано:

Приложение должно быть уникальным, креативным и полезным для пользователя, с версиями на всех языках и для всех рынков, которые оно поддерживает.

Наша общая цель состоит в том, чтобы заполнить каталог Магазина отличными приложениями для пользователей. Приложения, обладающие минимальной ценностью, будут отклонены — наличие таких приложений может затруднить поиск качественных приложений, а это, в свою очередь, нанесет вред как пользователям, так и разработчикам.

Хотите, чтобы мы привели пример приложения, обладающего минимальной ценностью? Хорошо, давайте рассмотрим наши примеры кода, созданные, чтобы помочь разработчикам при создании приложений для Магазина Windows. Эти примеры кода упрощают создание приложения с основными функциями, с помощью которых демонстрируются возможности платформы Windows 8. К сожалению, отдельные разработчики не стали себя утруждать, а просто перепаковали эти образцы и отправили в Магазин. Такие приложения обладают минимальной пользой и наверняка не пройдут сертификацию.

Вот еще несколько примеров приложений, не удовлетворяющих данному требованию:

  • Коллекции приложений, созданные для решения некоторой конкретной задачи с использованием, вероятно, одного и того же типового шаблона приложения. Мы рекомендуем, чтобы такие приложения объединялись в одно. Это более крупное приложение потенциально является более ценным для пользователей (и, вероятно, получит более высокие оценки и отзывы, чем каждое из исходных приложений, отправленных по отдельности). Поэтому оно имеет более высокие шансы пройти сертификацию.
  • Приложения, единственной целью которых является демонстрация ограниченного набора статических изображений (иногда всего одного изображения — например, флага или какого-либо известного человека).

Отправляйте полностью законченные приложения и достоверные их описания

В нашем сертификационном требовании 1.2 указано:

Приложение должно быть полностью функциональным, когда пользователь получит его из Магазина Windows

Мы требуем, чтобы отправляемые вами приложения были полностью функциональными. Мы также требуем, чтобы в описании приложения содержалась точная информация о возможностях приложения и его контенте, приводился четкий перечень всех ограничений на использование приложения (географических, касающихся оборудования и т. д.). Благодаря этому пользователи будут заблаговременно знать, что они получат, если приобретут или установят ваше приложение. Если приложение нарушает данное требование, это обычно происходит по одной из следующих причин:

  • Наличие недостоверного текста или снимков экрана. В описании приложения должны перечисляться только те возможности и контент, которые действительно реализованы в вашем приложении. Если вам известно, что некоторые функции вашего приложения не будут работать при определенных географических условиях или в случае отсутствия каких-либо датчиков оборудования или периферийных устройств, явным образом укажите эти ограничения в описании приложения. Ваша цель состоит в том, чтобы предоставить пользователям всю необходимую информацию перед тем, как они приобретут ваше приложение.
  • Наличие неработающих пользовательских элементов управления, разделов с заполнителями или поврежденных ссылок. Ваша цель должна заключаться здесь в том, чтобы у пользователя не создалось впечатление, что приложение является незаконченным. В большинстве случаев наши тест-инженеры обнаружат заполнители для функциональностей, которые разработчик собирается предоставить пользователям только в будущем обновлении. Мы будем отклонять все приложения, в которых имеются такие заполнители.
  • Непредоставление корпорации Майкрософт достаточных сведений для тестирования вашего приложения. Если для всестороннего тестирования вашего приложения требуются какие-либо специальные инструкции и сведения, например имя пользователя и пароль, вы должны включить эти данные при отправке приложения.

Правильно локализуйте отправляемое приложение

Другой проблемной областью, как оказалось, является наша политика локализации:

6.5. Вы должны локализовать свое приложение для всех поддерживаемых языков.

6.8. Вы должны предоставить локализованные снимки экрана приложения для каждого поддерживаемого языка.

Приложения Магазина Windows могут поддерживать более одного языка (см. справочную информацию о схеме манифеста пакета). Эта возможность платформы может помочь вашему приложению охватить более широкую аудиторию пользователей. Однако ее использование сопровождается следующими требованиями:

  • Список языков, поддерживаемых вашим приложением, должен включать по крайней мере один язык сертификации.
  • Для каждого из поддерживаемых языков необходимо предоставить локализованные элементы описания приложения (текст, снимки экрана с подписями и т. п.) на информационной панели приложения. Это необходимо, чтобы гарантировать для пользователей получение всей необходимой информации на предпочитаемом языке, что позволит им принять обоснованное решение о покупке приложения.
  • Приложение должно быть одинаково полезным на каждом из поддерживаемых языков, предоставляя значительную часть своего оформления и ресурсов контента на этих языках. Вы можете подробнее узнать о некоторых инструментах, помогающих упростить локализацию вашего приложения, в этой записи блога.

Естественно, приложение нарушит это требование, если для него будет объявлена поддержка какого-либо языка, но не будут включены ресурсы для данного языка, или же если язык, использованный в элементах описания приложения, не будет соответствовать объявленному языку.

Напомним, что мы допускаем различие между языками, поддерживаемыми вашим приложением, и рынками, на которых вы собираетесь его распространять. Языки вы определяете в манифесте приложения, а рынки распространения выбираете на информационной панели приложения.

Мы надеемся, что этот материал поможет вам сэкономить ценное время во время процесса сертификации. Как и прежде, мы стремимся к тому, чтобы Магазин Windows обеспечивал эффективные возможности как для разработчиков приложений, так и для пользователей. Мы высоко ценим выполняемую вами работу. Приложения, с которыми мы уже познакомились, подтверждают вашу приверженность цели создать для пользователей максимально комфортные и эффективные условия работы. Мы же, со своей стороны, напряженно работаем, чтобы предоставить вам инструменты и информацию, необходимые для прохождения процесса сертификации в максимально короткие сроки.

– Гас Саллум (Gus Salloum)