Сложные приёмы разработки приложений для Windows Phone 8

Основы дизайна и сертификационных требований к приложениям

Показывать лекцию целиком

Цель лекции: Ознакомиться с подходом к дизайну приложений для платформы Windows Phone и с сертификационными требованиями к таким приложениям

Общие принципы дизайна Windows Phone-приложений

Платформа Windows Phone является частью экосистемы Windows. Это касается и принципов дизайна приложений. В частности, речь идёт о разработке приложений с учетом принципов Modern UI. Главные цели применения этого подхода к дизайну – создание интерфейса, который максимально удобен, интуитивно понятен пользователям, который позволяет им работать с приложениями, погружаясь в эту работу, сосредотачиваясь на полезных функциях, предоставляемые приложениями, не отвлекаясь ни на что другое.

Основные принципы этого подхода к дизайну заключаются в идее первостепенной важности содержимого, в отказе от графических элементов оформления, не несущих каких-либо полезных функций, в лаконичности, простоте интерфейса. Такой интерфейс удобен для пользователя: работа с ним интуитивно понятна, на освоение возможностей приложения уходит сравнительно мало времени – за счёт стандартного расположения основных органов управления приложением, использования единообразных значков, предсказуемости реакции приложения на управляющие воздействия (в частности, речь идёт как о программных элементах управления, так и об аппаратной кнопке Назад, которая используется для навигации по приложению).

В интерфейсе, следующем идеям Modern UI, отсутствуют элементы, имитирующие, например, кнопки, которые можно встретить на реальных устройствах. Это – полностью цифровой интерфейс, не ставящий цели опору на объекты реального мира. На рис. 3.1. приведен пример интерфейса мобильной версии редактора Microsoft Word. На рис. 3.2 – один из экранов подсистемы настройки Windows Phone 8 – так выглядит типичный интерфейс приложения при использовании тёмной темы оформления.

(рис 3.1) Типичный интерфейс приложения для Windows Phone 8, мобильная версия Microsoft Word

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

(рис 3.2) Интерфейс системного приложения Windows Phone 8

Вышесказанное вполне справедливо для большинства приложений, рассчитанных на платформу Windows Phone. Именно – для большинства, а не для всех. Инструменты разработки приложений для Windows Phone не случайно предоставляют разработчику свободу в проектировании приложений. Не случайно приложения, которые отступают от идей Modern UI, проходят сертификацию в Магазине Windows Phone и становятся доступными для загрузки и покупки пользователями. Хочется отметить, что здесь имеются в виду неигровые приложения. В случае с играми для Windows Phone, как и для любой другой платформы, своеобразный дизайн каждой игры – это совершенно обычное (и вполне ожидаемое) явление. Однако, и неигровые приложения, если это оправдано достижением их основных целей, если это позволяет им полнее удовлетворить потребности пользователей – с учетом особенностей этих приложений, особенностей целевой аудитории, вполне могут отступать от стандартных концепций дизайна для Modern UI. Оправданность такого отступления всецело находится в сфере ответственности разработчика, а было ли оно, на самом деле оправданным, обычно показывают отзывы о приложении и оценки, которые ему ставят пользователи.

Стандартные шаблоны приложений, представленные в Visual Studio созданы с учётом вышеописанных идей. С изучения этих шаблонов и можно начать изучение дизайна приложений для Windows Phone. При разработке собственных приложений полезно, кроме того, исследовать внешний вид и структуру стандартных приложений для Windows Phone.

Ниже приведен список ресурсов по дизайну и проектированию приложений для Windows Phone.

  • В качестве краткого практического пособия, которое акцентирует внимание на основных деталях, касающихся интерфейса, и на некоторых особенностей функционирования приложений, можно использовать материал "Руководства по дизайну для Windows Phone 8 и 7.x" (http://blogs.msdn.com/b/africaapps/archive/2013/01/20/windows-phone-8-design-guidelines.aspx). Помимо кратких рекомендаций, касающихся тех или иных аспектов функционирования приложений, в материале есть ссылка на загрузку весьма полезного графического файла, подходящего для печати, где на одном листе собраны данные о разрешении экранов Windows Phone-устройств, о графических ресурсах приложений, о параметрах плиток, акцентных цветах, значках, которыми можно пользоваться при разработке.
  • В качестве вспомогательных материалов для проектирования собственных интерфейсов приложений можно воспользоваться шаблонами дизайна. Ссылки на загрузку шаблонов дизайна и некоторых других полезных материалов, можно найти здесь: (http://msdn.microsoft.com/en-us/library/windowsphone/design/ff637515%28v=vs.105%29.aspx) в разделе Шаблоны (Templates).
  • Здесь: (http://msdn.microsoft.com/ru-ru/ff380145.aspx), в разделе "Дизайн приложений", можно найти список ссылок на материалы по дизайну для Windows Phone.
  • Здесь: (http://msdn.microsoft.com/ru-ru/hh923919) можно найти сгруппированные по темам ссылки на материалы по дизайну для Windows Phone. Эти материалы, в частности, охватывают как общие вопросы проектирования и дизайна приложений, так и содержат детальные рекомендации.
  • Здесь: (http://msdn.microsoft.com/ru-ru/hh680827) находится подборка материалов (в том числе – видеозаписей докладов), посвященных дизайну. Множество видеозаписей, среди которых можно найти и материалы, посвященные дизайну, находится здесь: (http://www.techdays.ru/videos/Windows%20Phone).
  • Здесь: (http://ux.artu.tv/?page_id=190) можно найти подборку материалов Артуро Толедо (Arturo Toledo), "24 недели дизайна для Windows Phone", эти же материалы доступны в виде PDF-документа, который можно загрузить здесь: (http://www.toledo2.com/2012/10/23/24-weeks-of-windows-phone-design/)
  • Здесь: (https://www.facultyresourcecenter.com/curriculum/9049-Designing-for-Modern-UI-Module-1-RS.aspx?c1=en-usc2=0) находится учебный курс "Проектирование приложений для Modern UI", он ориентирован на приложения для Windows 8, однако, те универсальные принципы проектирования и дизайна приложений, которые в нём рассмотрены, применимы и к приложениям для Windows Phone.
  • Сертификационные требования к приложениям для Магазина Windows Phone

    Приложения для Windows Phone распространяются с помощью Магазина Windows Phone (http://www.windowsphone.com/ru-ru/store). Перед размещением в Магазине приложения проходят проверку, для этого приложение должно соответствовать сертификационным требованиям, приведенным в подразделах материала "Требования к сертификации приложений для Windows Phone": (http://msdn.microsoft.com/en-us/library/windowsphone/develop/hh184843%28v=vs.105%29.aspx). Сертификационные требования постоянно обновляются, поэтому рекомендуется следить за их изменениями. Требования касаются как чисто технических особенностей приложений, так и положений общего характера. Вот выдержки из Требований, по состоянию на 5 апреля 2013 года:

    Раздел App policies for Windows Phone (Правила проверки приложений для Windows Phone) (http://msdn.microsoft.com/en-us/library/windowsphone/develop/hh184841%28v=vs.105%29.aspx) содержит следующие требования:

  • Запрет на продажу нецифровых товаров, предусматривающих покупки из приложения с использованием API Microsoft, доступных на Windows Phone (п. 2.1.1,). Из этого правила есть исключения, например, если покупка из приложения подразумевает покупку пользователем физической копии цифровых данных, созданных им на Windows Phone (например, фотографий, или документов), подобное допустимо. В то же время, в США нельзя продавать из приложений цифровые журналы.
  • Запрет рекламировать с помощью приложений тарифные планы мобильных операторов (п 2.2.)
  • Если приложение подразумевает загрузку дополнительных данных, размер которых превышает 50 Мб, в описании приложения должны содержаться сведения об этом (п. 2.5.).
  • Приложение должно реализовывать некую полезную функциональность, иметь самостоятельную ценность, и хотя технически можно создать приложение, которое занимается исключительно тем, что загружает веб-страницы (то есть, является лишь интерфейсом к некоему веб-сервису), п. 2.10. Требований запрещает это.
  • В разделе Content policies for Windows Phone (Правила проверки содержимого приложений для Windows Phone) (http://msdn.microsoft.com/en-us/library/windowsphone/develop/hh184842%28v=vs.105%29.aspx) содержатся, например, следующие требования:

  • В приложении должно использоваться содержимое и метаданные (то есть, например, название приложения, логотипы, изображения, звуки, доступ к интернет-службам, API), на использование которых у разработчика приложения есть права (п. 3.1. Требований,).
  • Содержимое приложения не должно быть оскорбительным, призывать к насилию или жестокости, содержать призывы к незаконной деятельности, содержать контент "для взрослых". При этом к приложениям, рассчитанным на некоторые страны применяются особые требования (п. 3.2. – 3.10.)
  • Для распространения игр в некоторых странах (в том числе – в России) требуется наличие сертификата с оценкой игры (п. 3.11. Требований). Подробности о сертификатах можно узнать здесь: http://msdn.microsoft.com/ru-ru/library/windows/apps/hh452763.aspx, данный материал касается игр для Windows 8, но он справедлив и для Windows Phone-игр. В России применимы сертификаты PEGI (Pan European Game Information), http://www.pegionline.eu/en/index/.
  • В разделе App submission requirements for Windows Phone (Требования к отправке приложений для Windows Phone в Магазин) (http://msdn.microsoft.com/en-us/library/windowsphone/develop/hh184844%28v=vs.105%29.aspx) содержится набор требований, которым должно соответствовать приложение при отправке его в Магазин:

  • Пункт 5.1. посвящен надёжности приложений, в частности – поддержки ими работы на различных устройствах, особенностях обработки исключений, закрытия приложений, скорости отклика (приложение, выполняющее некую длительную операцию, не должно переставать реагировать на управляющие воздействия пользователя, показывая индикатор выполнения задачи и давая пользователю возможность отменить эту задачу). Здесь же приведены требования, касающиеся возможности осуществления тестирования приложения сотрудниками Microsoft. В частности, если приложение подразумевает работу с каким-либо интернет-сервисом (например, с социальной сетью), и предусматривает ввод неких учетных данных для тестирования, такие данные нужно предоставить при отправке приложения. Если приложению, для работы, требуется некий веб-сервис – этот сервис должен быть работоспособным и доступным.
  • Пункт 5.2. посвящен производительности и управлению ресурсами. В частности, первый экран приложения должен быть показан через 5 секунд после запуска. Допустимо, пока приложение загружается, отображать экран-заставку, но приложение, в любом случае, должно реагировать на воздействия пользователя не более, чем через 20 секунд после запуска. Здесь же описаны требования к прекращению работы приложения, к работе с кнопкой Назад, требования по потреблению памяти. Приложение, рассчитанное на устройства, имеющие 256 Мб встроенной памяти, не должно потреблять более 90 Мб ОЗУ, это актуально для Windows Phone 7. Для устройств на Windows Phone 8 актуальны объемы потребляемой памяти в 150 – 380 Мб, в зависимости от конкретного устройства (подробнее об этом можно узнать здесь: http://msdn.microsoft.com/en-us/library/windowsphone/develop/jj681682%28v=vs.105%29.aspx). Приложения не должны часто вызывать API, реализующие функциональность пробного приложения (например, в игровом цикле). Обычно подобные вызовы, для проверки лицензии приложения, производят при запуске приложения, или при обработке других событий его жизненного цикла, кроме того, результаты вызовов кэшируют – для того, чтобы, когда пользователь приобрел полную версию приложения, не выполнять ненужных (и сравнительно медленных) обращений к этим API.
  • Пункт 5.3. указывает на то, что работа приложения не должна препятствовать работе основной функциональности телефона, связанной со звонками, SMS и MMS-сообщениями.
  • В пункте 5.4. речь идёт о безопасности, в частности, приложение не должно содержать вредоносного кода.
  • Пункт 5.5. посвящен проверке содержимого, в частности, если приложение локализовано, оно должно верно отображаться при использовании в системе соответствующего языка, то же самое касается и возможности работать с приложением при выборе тёмной или светлой цветовых тем. Элементы приложения должны быть отчётливо видны при любых настройках телефона.
  • Пункт 5.6. указывает на то, что приложение должно содержать сведения об имени приложения, о его версии, и контактные сведения для получения техподдержки от разработчика приложения. Обычно это реализуют в виде отдельной страницы приложения.
  • Раздел Additional requirements for specific app types for Windows Phone (Дополнительные требования для некоторых типов приложений для Windows Phone) (http://msdn.microsoft.com/en-us/library/windowsphone/develop/hh184838%28v=vs.105%29.aspx). В частности, здесь идёт речь о требованиях к приложениям, которые используют средства определения местоположения пользователя, о приложениях, реализующих функции навигации, о VoIP-приложениях, приложениях, работающих с мультимедийными данными и о некоторых других.

    Выводы

    Дизайн приложений для Windows Phone должен обеспечивать максимальное удобство для пользователей. В большинстве случаев это достигается с использованием Modern UI-подхода, однако, разработчик не ограничен этим подходом.

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

    Задание

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

    Придумайте несколько идей приложений, всесторонне проанализируйте их на соответствие требованиям и подготовьте доклад на тему "Анализ идей разработки приложений на соответствие Сертификационным требованиям Магазина Windows Phone".

    Дополнительные материалы

    К данной лекции подготовлено видеоприложение.

    Вернуться к учебному плану