Опубликован: 12.02.2013 | Доступ: свободный | Студентов: 785 / 44 | Длительность: 17:51:00
Специальности: Программист
Лекция 10:

Публикация приложений в Windows Phone Marketplace

Аннотация: Чтобы сделать доступным созданное вами приложение другим пользователям телефонов Windows Phone, его необходимо опубликовать на портале Microsoft Windows Phone Marketplace. В этой лекции вы узнаете, какие действия необходимо выполнить, чтобы подготовить программу для размещения на Marketplace, а также как сделать программу отличающейся от других.

Презентацию к данной лекции Вы можете скачать здесь.

26.1. Подготовка приложения для продажи

Для того чтобы приложение было принято для распространения через Marketplace, оно должно отвечать определённым требованиям. Кроме этого, приложение будет всесторонне тестироваться, и эти тесты доступны вместе с пакетом Windows Phone SDK, чтобы можно было осуществить предварительное тестирование приложения.

Анализ производительности

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

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

Инструменты для анализа можно запустить в Visual Studio, выбрав пункт меню Отладка -> Начать анализ производительности Windows Phone. Для анализа приложения можно указать необходимые настройки, в пределах которых приложение будет выполнять анализ. Программа может работать в эмуляторе или в физическом устройстве. В любом случае система создаёт файл журнала с расширением .sap, который сохраняется как часть проекта Visual Studio, что позволяет сравнивать результаты теста с результатами предыдущего теста производительности и определять эффект сделанных изменений. Visual Studio открывает файл .sap в виде диаграммы, исследуя которую, можно определить эффективность работы приложения.

Создание файла XAP для распространения приложения

Как было рассмотрено в лекции 3, при построении приложения создаётся один файл с расширением .xap, который передаётся в устройство Windows Phone. Этот файл также передаётся в Windows Phone Marketplace, чтобы приложение можно было продать.

Этот файл содержит все сборки и ресурсы программы, а также файла манифеста, которые описывают приложение. В файле WMAppManifest.xml файл перечислены используемые приложением функции телефона, а также задаётся жанр приложения, который определяет, в каком месте телефона сохраняется программа. Например, программы с жанром Игры сохраняются в списке игр, а другие приложения сохраняются в списке приложений.

<?xml version="1.0" encoding="utf-8"?>
<Deployment xmlns=http://schemas.microsoft.com/windowsphone/2009/deployment
    AppPlatformVersion="7.0">
  <App xmlns="" ProductID="{b92ce770-1b22-4d52-998e-113c2784067a}"
      Title="PictureDisplay" RuntimeType="Silverlight" Version="1.0.0.0"
      Genre="apps.normal" Author="PictureDisplay author"
      Description="Sample description" Publisher="PictureDisplay">
    <IconPath IsRelative="true" IsResource="false">ApplicationIcon.png</IconPath>
    <Capabilities>
      <Capability Name="ID_CAP_GAMERSERVICES"/>
      <Capability Name="ID_CAP_IDENTITY_DEVICE"/>
      <Capability Name="ID_CAP_IDENTITY_USER"/>
      <Capability Name="ID_CAP_LOCATION"/>
      <Capability Name="ID_CAP_MEDIALIB"/>
      <Capability Name="ID_CAP_MICROPHONE"/>
      <Capability Name="ID_CAP_NETWORKING"/>
      <Capability Name="ID_CAP_PHONEDIALER"/>
      <Capability Name="ID_CAP_PUSH_NOTIFICATION"/>
      <Capability Name="ID_CAP_SENSORS"/>
      <Capability Name="ID_CAP_WEBBROWSERCOMPONENT"/>
    </Capabilities>
    <Tasks>
      <DefaultTask  Name ="_default" NavigationPage="MainPage.xaml"/>
    </Tasks>
    <Tokens>
      <PrimaryToken TokenID="PictureDisplayToken" TaskName="_default">
        <TemplateType5>
          <BackgroundImageURI IsRelative="true"
            IsResource="false">Background.png</BackgroundImageURI>
          <Count>0</Count>
          <Title>PictureDisplay</Title>
        </TemplateType5>
      </PrimaryToken>
    </Tokens>
  </App>
</Deployment>

Это пример файла манифеста WMAppManifest.xml, созданного для приложения PictureDisplay. В этом файле указано, что приложение будет использовать все возможности телефона. Когда приложение предоставляется в Marketplace, содержимое этого файла проверяется в соответствии с вызовами функций устройства, которые выполняет приложение. Если приложение будет использовать ресурсы, которые не определены в этом файле, то проверка допустимости завершится неудачей.

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

Перед тем как предоставить программу в Marketplace, необходимо указать имя автора, описание программы и имя издателя. Файл манифеста можно отредактировать в Visual Studio. При построении приложения этот файл включается в файл XAP. Обратите внимание, что для загрузки в Marketplace приложение должно быть построено в режиме Release, а не Debug.

Значки и изображения приложения

Перед тем как предоставить программу в Marketplace, необходимо также подготовить значки, которые будут представлять приложение в устройстве, а также некоторые изображения, которые будут отображаться в Windows Phone Marketplace. Значки должны иметь определённые размеры и сохраняться в файлы PNG:

  • значок маленькой плитки приложения в списке приложений телефона (обязательно) размером 99*99 пикселей;
  • значок большой плитки приложения на рабочем столе телефона (необязательно) размером 173*173 пикселей;
  • значок плитки приложения для Windows Phone Marketplace (обязательно) размером 200*200 пикселей;
  • фоновое изображение, которое используется в фоновой панораме страницы Marketplace для приложения (необязательно), размером 1000*800 пикселей.

Также необходимо создать, по крайней мере, один снимок экрана приложения размером 800*480 пикселей. Предпочтительнее загрузить несколько снимков экрана, чтобы потенциальные покупатели имели представление о том, как программа выглядит во время работы.

Распространение XAP-файлов

Обычно на устройстве Windows Phone можно запускать только те программы, которые были получены через Marketplace. Однако, разработчик приложений может разблокировать телефон, чтобы он мог запускать программы, которые загружены в него из Visual Studio. Разблокировка устройства осуществляется за дополнительную плату. Разработчики могут разблокировать максимум три устройства, а студенты, участвующие в программе DreamSpark, могут бесплатно разблокировать только одно устройство. Разблокировка выполняется с помощью приложения Windows Phone Registration, которое входит в состав Windows Phone SDK. Это приложение выполняет регистрацию подключённого к компьютеру с помощью программы Zune телефона на узле для разработчиков приложений для Windows Phone. Для регистрации требуется учётная запись Windows Live.

Приложения, которые разворачиваются в телефоне, остаются в памяти телефона, и их можно запускать точно так же, как и любые приложения из Marketplace. Однако, в устройстве может быть одновременно загружено только 10 собственных приложений.

Если нужно отправить программу другим разработчикам, можно отправить им файл XAP, и разработчики смогут использовать программу Application Deployment для развёртывания приложения из файла XAP в разблокированном устройстве или эмуляторе Windows Phone. Эта возможность позволяет распространять приложения для тестирования перед их публикацией в Marketplace.

26.2. Распространение приложений и игр для Windows Phone

Пользователь телефона на платформе Windows Phone может получить программу только с Windows Phone Marketplace. Все загруженные на портал программы проходят проверку на допустимость.

Получение приложений для Windows Phone

Владелец устройства Windows Phone может использовать свою учётную запись Windows Live для получения доступа к услугам, предоставляемым сервисами Windows Live, Zune и Xbox Live, а также Windows Phone Marketplace.

Владелец телефона может загружать приложения через приложение Marketplace в устройстве (через Wi-Fi или сеть оператора сотовой связи), программное обеспечение Zune на компьютере под управлением Windows или с сайта http://www.windowsphone.com/marketplace.

Учётную запись Windows Live можно использовать на пяти устройствах. После удаления приложения с устройства его можно загрузить повторно, не покупая его ещё раз, поскольку в Marketplace сохраняется список всех купленных приложений. Также в Marketplace реализована система оценок, которая позволяет давать оценки и отзывы на приложения.

Создание приложений и игр для Windows Phone

Зарегистрированный разработчик приложений для Windows Phone может загружать свои приложения и игры в Marketplace через сайт http://create.msdn.com. На этом сайте размещаются и обновляются средства разработки и различная документация.

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

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

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

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

Некоторые приложения являются бесплатными, а другим — платными. Оплата купленных приложений обычно осуществляется с помощью банковской карты. Для многих приложений доступен тестовый режим, который является бесплатным. Такое приложение можно обновить до полнофункциональной версии. Во время работы программы она может определить, в каком режиме она работает: в тестовом или полном.

Зарегистрированные разработчики могут разместить неограниченное количество платных приложений и до 100 бесплатных приложений в год. Размещение каждого следующего бесплатного приложения будет стоить $20.

Перед тем как размещать приложение, разработчик должен сначала получить членство в Marketplace. Это стоит $99 в год и требует наличия учётной записи Windows Live. Если членство прекращается, все приложения разработчика удаляются с Marketplace. Студенты, зарегистрированные в программе DreamSpark, могут получить свободное членство в Windows Phone Marketplace.

Зарегистрированным разработчикам Marketplace выдаётся уникальный ключ, который используется для подписи приложений. Разработчики могут установить цену своих приложений и получить 70 % от стоимости проданных приложений. Эта сумма перечисляется на указанный банковский счет, как только они достигли порога в $200.

Тестовый режим. Приложение или игра могут быть загружены в качестве бесплатной демо-версии. Программа может определить, работает ли она в демонстрационном режиме:

LicenseInformation info = new LicenseInformation();

if (info.IsTrial())
{
    // приложение работает в тестовом режиме
}

Класс LicenseInformation описан в пространстве имён Windows.Phone.Marketplace. Если программа работает в тестовом режиме, может ограничить его возможности или время использования. Если пользователь захочет обновить приложение до полной версии, оно может использовать задачу запуска для перехода к странице приложения в Marketplace.

Добавление рекламы. Если вы не хотите продавать своё приложение, но всё равно хотите зарабатывать деньги, вы можете добавить в приложение рекламные объявления. Их можно добавить в программы XNA или Silverlight и показывать пользователям в качестве рекламы. Пользователь может ответить на рекламу, подключившись к веб-сайту рекламодателей или позвонив им. В любом случае, разработчик получает 70% дохода от рекламы. Рекламные объявления можно выводить в любую область экрана телефона. Также можно зарегистрироваться на портале Microsoft PubCenter и добавлять рекламу в приложения в большом количестве регионов всего мира. Advertising SDK является дополнением к Windows Phone SDK и предоставляет набор рекламных серверов, которые можно использовать в играх XNA и приложениях Silverlight.

Marketplace Test Kit. Чтобы повысить вероятность одобрения приложения с первого раза, можно использовать набор инструментов Marketplace Test Kit, который поставляется вместе с Windows Phone SDK. В его состав входит набор инструментов и процедур, которые используются тестерами. Visual Studio проверяет наличие обновлений инструментов и автоматически их обновляет. Эти инструменты можно запустить, выбрав в главном меню Visual Studio пункт Проект -> Marketplace Test Kit.

Закрытое бета-тестирование. Если вы хотите получить отзывы пользователей до размещения приложения в Marketplace, можно создать "закрытую" бета-версию приложения. Такая форма выпуска приложения позволяет отправить ссылку на приложение до 100 тестерам, которые могут загрузить и использовать программу в течение 90 дней, и после этого приложение удаляется из их телефона. Эта опция указывается в начале процесса предоставления приложения.

Краткие итоги

  1. Владельцы устройств Windows Phone могут загружать приложения с портала Windows Phone Marketplace.
  2. Зарегистрированные разработчики могут предоставлять свои приложения для одобрения и размещения на Marketplace.
  3. Разработчики регистрируют и отслеживают продвижение своих приложений через веб-сайт для разработчиков приложений для Windows Phone.
  4. Регистрация в качестве разработчика стоит $99 в год, студенты могут зарегистрироваться бесплатно по программе Dreamspark.
  5. Разработчики могут создавать бесплатные или платные приложения, но могут бесплатно размещать не более 100 бесплатных приложений в год. Размещение каждого следующего бесплатного приложения стоит $20.
  6. Зарегистрированный разработчик может разблокировать свой телефон для запуска программ из Visual Studio.
  7. Приложения распространяются в виде XAP-файлов, которые содержат все ресурсы и содержимое приложения, а также файл манифеста, который описывает содержимое и предоставляет информацию об используемых приложением функциях телефона.
  8. Разработчики могут сами загружать файлы XAP на разблокированные телефоны.

Вопросы

  1. Какие возможности есть у инструмента для анализа производительности приложений для Windows Phone?
  2. Для чего нужны файлы манифеста?
  3. Какие значки и изображения необходимо подготовить перед распространением приложения через Windows Phone Marketplace?
  4. Для чего нужна разблокировка телефона?
  5. Как проходит процесс одобрения приложения?
  6. Для чего предназначен тестовый режим приложения?
  7. Как организовать закрытое бета-тестирование приложения?

Упражнения

Упражнение 1. Использование инструмента для анализа производительности

В этом упражнении вы выполните анализ производительности приложения с помощью инструментов, которые входят в состав Windows Phone SDK.

  1. Откройте в Visual Studio один из созданных ранее проектов приложения Silverlight или XNA.
  2. В главном меню Visual Studio выберите пункт Отладка -> Начать анализ производительности Windows Phone. Откроется окно параметров.
  3. Выберите необходимые параметры или оставьте значения по умолчанию.
  4. Выберите в качестве целевого устройства эмулятор Windows Phone и нажмите ссылку Запустить приложение. Приложение запустится в эмуляторе, и Visual Studio начнёт собирать сведения о работе приложения.
  5. Выполните в приложении какие-нибудь операции и закройте его, нажав в эмуляторе кнопку Назад, находясь в главном окне приложения. Visual Studio закончит сбор данных и откроет созданный файл с расширением .sap в виде диаграммы.
  6. Проанализируйте диаграмму. Обратите внимание, в какие моменты были зафиксированы всплески активности приложения, и вспомните, какие действия вы выполняли в это время.

Упражнение 2. Использование инструмента Marketplace Test Kit

В этом упражнении вы выполните тестирование приложения с помощью инструмента Marketplace Test Kit.

  1. Откройте в Visual Studio один из созданных ранее проектов приложения Silverlight или XNA.
  2. Выберите в раскрывающемся списке правее от выбора целевой платформы пункт Release.
  3. Выполните построение проекта, нажав кливиши Ctrl + Shift + B.
  4. В главном меню Visual Studio выберите пункт Проект -> Открыть в Marketplace Test Kit. Откроется окно инструмента Marketplace Test Kit.
  5. На вкладке Автоматизированные тесты нажмите на кнопку Запуск тестов.
  6. Просмотрите результаты теста. Попробуйте определить, почему приложение не прошло некоторые тесты, и попытайтесь устранить недостатки.