Главная » C#, Windows Runtime, XAML, Разработка для Windows 8 » Подготовка приложений к публикации Windows Runtime

0

Подготовка пакета к публикации

Работа с манифестом

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

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

<Capabilities>

<Capability Name="internetClient" />

<DeviceCapability Name="webcam" />

</Capabilities>

Рассмотрим, какие возможности можно указать в  редакторе  манифеста  и для чего они используются:

·                   Documents Library (documentsLibrary) — мы писали об этой возможности в  прошлой главе. Библиотека Documents является  одним из хранилищ, ссылку на которое можно получить через класс KnownFolders. При этом программный доступ к файлам можно получить только в том случае, если их типы (расширения) заявлены в виде  расширения File Type Associations, которое  устанавливается в  том же манифесте. Это сделано специально, чтобы приложение не могло перебирать все  типы файлов и  каким-то образом вредить пользователю;

·                   Music Library (musicLibrary) — эта возможность позволяет  получить доступ к библиотеке Music;

·                   Pictures Library (picturesLibrary) — эта возможность позволяет получить доступ к библиотеке Pictures;

·                   Videos Library (videosLibrary) — эта возможность позволяет  получить доступ к библиотеке Videos;

·                   Microphone (microphone) — позволяет получить доступ к микрофону;

·                   Webcam (webcam) — пример работы этой возможности  представлен в  главе, в  которой описана работа с медиа. Позволяет получить доступ к камере;

·                   Removable    Storage    (removableStorage)   —    позволяет    получить программный  доступ  к  файлам  на  внешних   устройствах. При  этом принцип работы такой же, как и для Documents библиотеки — доступны только файлы заявленных расширений;

·                   Location   (location)  —–   позволяет получить   доступ  к   механизмам определения местоположения пользователя (через сеть оператора, WiFi или GPS датчик);

·                   Proximity (proximity) — эта возможность позволяет взаимодействовать с другими устройствами, находящимися в  непосредственной близости. При этом может использоваться Bluetooth, Wi Fi или прямое подключение через кабель;

·                   Internet and public networks (internetClient и  internetClientServer) — возможность  позволяет  использовать   исходящее   соединение   (или входящее и исходящее) для взаимодействия с сервером;

·                   Text messaging or SMS (sms) — предоставляет программный  доступ к устройству, которое может отправлять SMS;

·                   Domain  credentials   (enterpriseAuthentication)   —   эта   возможность позволяет взаимодействовать с ресурсами в корпоративном окружении, используя данные аутентификации пользователя;

·                   Home and work networks (privateNetworkClientServer) —  позволяет получить  доступ  к  домашней  сети  (ресурсам,  которые  открыты  для доступа);

·                   Certificates (sharedUserCertificates) — предоставляет доступ к сертифи-

катам пользователя.

Следует иметь в  виду, что все возможности,  которые требуются приложениям,

пользователь будет видеть в момент загрузки приложения из магазина.

Указав все возможности приложения, можно перейти к декларациям расширений. В нескольких главах мы упоминали о контактах, которые может устанавливать приложение с системой или с другим приложением. Так вот, чтобы ОС Windows 8 четко могла определять, какие контакты поддерживает приложение, необходимо задекларировать все его расширения. Вот список возможных расширений:

·                   Account Picture Provider — это расширение позволяет использовать Ваше приложение для установки изображения, ассоциированного с профилем пользователя. Это можно делать только в  том случае, если приложение позволяет создавать  изображения с помощью камеры и дополняет его какими-то эффектами;

·                   AutoPlay   Content   —   если   Ваше   приложение   позволяет   работать с контентом, размещенном на DVD носителях, картах  памяти и т. д., то данное расширение можно использовать для отображения приложения в списке, отображаемом при вставке нового носителя;

·                   AutoPlay Device — у пользователя появляется возможность активировать Ваше приложение при подключении нового внешнего устройства;

·                   Background Tasks — это расширение позволяет указать имя библиотеки в    приложении  (точку  входа),   чтобы  обеспечить   запуск  одной  или нескольких задач в фоне;

·                   Camera Settings — позволяет приложению заменить стандартное окно настроек камеры своим собственным;

·                   Certificates  —  позволяет приложению  установить сертификат,  чтобы использовать его для внутренних целей;

·                   Contact Picker — регистрирует Ваше приложение как один из источников контактов, предоставляя к ним доступ из других приложений;

·                   File Open Picker — регистрирует Ваше приложение как источник файлов для других приложений;

·                   File Save Picker — регистрирует возможность приложения  принимать внешние файлы для последующей работы в стандартном режиме (после запуска);

·                   File Type Associations — позволяет настроить типы файлов, с которыми приложение ассоциировано;

·                   Game    Explorer    —    регистрирует   рейтинг    приложения,    который используется в   службе родительского контроля  Windows и  позволяет родителям блокировать доступ к некоторым приложениям для детей;

·                   Print Task Settings — позволяет приложение заменить стандартное окно по настройке печати своим собственным;

·                   Protocol — регистрирует URL-протокол, используемый приложением:

·                   Search  —  регистрирует  приложение  как  предоставляющее  механизм поиска, который интегрируется с панелью операционной системы;

·                   Share Target — настроив эту декларацию, можно сделать  приложение потенциальным потребителем данных, которые  предоставляют другие приложения через пункт Share.

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

Подписание пакета

После  создания  пакета   его  необходимо  подписать   сертификатом,   чтобы гарантировать его целостность и принадлежность организации или пользователю. Сертификат генерируется автоматически, если Вы используете Visual Studio, но Вы можете использовать и свой сертификат. Для этого можно воспользоваться вкладкой Packaging редактора манифеста:

Рис. 11.1.

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

Локализация манифеста

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

<Properties>

<Property>

<DisplayName>ms-resource:dName</DisplayName>

<Description>ms-resource:dDescription</Description>

<Logo>tile.png</Logo>

</Property>

</Properties>

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

Тестирование пакета

Тестирование приложения можно разбить на несколько этапов. Но  одним из завершающих этапов является использование утилиты Windows App Certification Kit, которая устанавливается вместе с Windows 8 SDK. Данная утилита позволит проверить ваше приложение в автоматическом режиме по многим параметрам (начиная от времени запуска и заканчивая списком возможностей) и это первое, что будет делаться, когда Ваше приложение отправится на сертификацию.

Запустив утилиту, Вы сможете увидеть, что она достаточно функциональна. Но в нашем случае необходимо выбирать раздел Validate Metro style App:

Рис. 11.2.

Утилита  сама  найдет  установленные приложения  в   Вашей  системе  (Launch-

контракт) и предложит протестировать одно из них:

Рис. 11.3.

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

Рис. 11.4.

Установка пакета на другие компьютеры

Создавая пакет для локального тестирования или для публикации в  Windows Store, Вы  можете  воспользоваться  таким  пунктом  меню,  как  Store->Create App Package. Поскольку у разработчика не всегда есть прямой доступ в  Store, а тестировать приложение необходимо на разных машинах, предусмотрено два варианта:

Рис. 11.5.

Первый вариант позволяет использовать  профиль в  Store для создания пакета, подходящего  для  публикации  (в  качестве издателя  устанавливается  имя  из профиля в  Store). Второй вариант не требует входа в  Store и позволяет создать пакет для локального использования.

Если  Вы  выбираете первый вариант, то  должны авторизоваться  в  Store,  но в  любом случае мастер позволяет Вам выбрать версию и  место для записи Вашего пакета:

Рис. 11.6.

Если Вы создаете пакет для локального использования, основными  являются три файла: сертификат с открытым ключом (.cer), пакет с приложением (.appx) и bat-файл, который содержит команды по установке приложения на локальный компьютер. Все это можно перенести на любой ПК под управлением Windows 8 и приступить к тестированию Вашего приложения.

Замечание.   Тестовая   машина   должна   быть    активирована   для разработки.

Сергей Лутай, Сергей Байдачный, Windows 8 для C# разработчиков

По теме:

  • Комментарии