Microsoft — мировой лидер в области ПО и ИТ-услуг
135,61
рейтинг
3 мая 2011 в 11:00

Разработка → Обзор Windows Azure Toolkit for Windows Phone 7

Привет, хабрачитатели!

Windows Azure Toolkit for Windows Phone 7

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

Когда я только узнал про облачные технологии, я подумал, что было бы здорово получить доступ к мощи облака на мобильном устройстве. Поскольку я специализируюсь на технологиях Microsoft, то я задумывал сделать пример, где с Windows Phone 7 будут удобно доступны сервисы хранения Windows Azure.

Но меня опередили.

Вышел Windows Azure Toolkit for Windows Phone 7, обзор которого я представляю вашему вниманию.


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

Не осталась в стороне и компания Microsoft. У нас есть PaaS облако Windows Azure и есть, набирающая популярность, мобильная платформа Windows Phone 7. С самого начала появления облачной платформы Windows Azure она поддерживает REST API, поэтому всегда можно написать приложение, которое будет взаимодействовать с Windows Azure, используя обычные HTTP запросы. Но это далеко от удобства использования Windows Azure при разработке для Windows-платформы.

Windows Azure Toolkit for Windows Phone 7 как раз и предназначен для упрощения использования возможностей технологий Windows Azure на платформе Windows Phone 7. Набор включает в себя библиотеки классов для Windows Phone 7 для взаимодействия с Windows Azure с исходным кодом, шаблоны проектов, пример приложения и документацию. Также он содержит вспомогательный набор сервисов, которые обеспечивают более безопасное использование сервисов Windows Azure на мобильном устройстве.

Установка


Тулкит поставляется в виде самораспаковывающегося архива WAZToolkitForWP7.Setup.exe. Он распаковывается в следующую иерархию директорий:

Иерархия директорий Windows Azure Toolkit for Windows Phone 7
Чтобы запустить установку шаблонов, надо запустить файл Setup.cmd. Запсутится утилита, которая проверит, что на машине разработчика присутствует всё, необходимое для работы тулкита.

Утилита проверки зависимостей Windows Azure Toolkit for Windows Phone 7

Если чего-то нет – даст ссылку на скачивание или на скрипт, выполняющий необходимые настройки. Финальный шаг установки – установка шаблонов для Visual Studio 2010.

Установка шаблонов Visual Studio 2010 из Windows Azure Toolkit for Windows Phone 7

Сервисы


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

Сервисы предоставляемые тулкитом, также как и веб-сайт системы администрирования пользователей хостятся в веб-роли ASP.NET MVC 2.

Сервисы Windows Azure Toolkit for Windows Phone 7

Сервисы аутентификации тулкита (AuthenticationService) базируются на ASP.NET провайдерах (Membership, Roles, Profile и Session State Store) для таблиц Windows Azure Table. Исходный код провайдера содержится в самом тулките (\Samples\Libraries\AspProviders\). Прежде чем получить доступ к каким-либо данным необходимо аутентифицироваться, используя этот сервис.

Обработчик HTTP REST API запросов к таблицам Windows Azure (AzureTablesProxy.axd) используется как прокси запросов к таблицам Windows Azure. Запросы, которые приходят на этот сервис подписываются ключом аккаунта хранения и перенаправляются к реальной конечной точке (endpoint) таблиц Windows Azure.

WCF REST сервис генерации подписей для общего доступа (SharedAccessSignatureService) для работы с контейнерами и BLOB-ами.

Библиотеки


В папке \Samples\Libraries\ находятся библиотеки в исходных кодах:
  • AspProviders: ASP.NET провайдеры (Membership, Roles, Profile и Session State Store) поверх таблиц Windows Azure Tables;
  • System.Data.Services.Client: версия клиентской библиотеки OData для Windows Phone 7 (http://odata.codeplex.com) слега поправленная для поддержки работы с Azure Table API;
  • WindowsPhone.Recipes.Push.Messasges: Push Notification Server Side Helper Library, — серверная библиотека, часть «рецепта» «Windows Phone 7 Push Recipe». Позволяет отсылать все типы пуш-оповещений: Tile, Toast, и Raw;
  • WindowsPhoneCloud.StorageClient: клиентская библиотека для работы с Azure Storage для Windows Phone 7. Эта библиотека позволяет:
    • создавать и удалять таблицы Azure Tables;
    • выполнять CRUD операции со строками таблиц Azure Tables;
    • Загружать BLOB-ы в публичные/приватные контейнеры, с использованием подписей общего доступа (Shared Access Signatures);
    • Получать список BLOB-ов в приватных/публичных контейнерах с использованием подписей общего доступа (Shared Access Signatures)


Шаблоны Visual Studio 2010


Тулкит содержит два шаблона, каждый из которых доступен и на C#, и на Visual Basic.

Шаблоны Windows Azure Toolkit for Windows Phone 7
  • Windows Phone 7 Cloud Application: Упрощает создание приложения Windows Phone 7 использующего возможности Windows Azure. Шаблон генерирует проект Windows Azure, проект ASP.NET MVC 2 (веб-роль), и проект приложения Windows Phone 7. Данный проект демонстрирует, как можно использовать сервисы хранения Windows Azure без необходимости хранить данные аккаунта на мобильном устройстве.
  • Windows Phone 7 Empty Cloud Application: То же самое, что и шаблон Windows Phone 7 Cloud Application, но вместо примера приложения Windows Phone 7, демонстрирующего возможности сервисов тулкита, создается пустой проект приложения Windows Phone 7 с минимальным набором настроек и зависимостей.


Дополнительно


Анонс: http://www.wadewegner.com/2011/03/windows-azure-toolkit-for-windows-phone-7/
Скачать: http://watoolkitwp7.codeplex.com/
Видео с Channel 9: http://channel9.msdn.com/Shows/Cloud+Cover/Cloud-Cover-Episode-41-Windows-Azure-Toolkit-for-Windows-Phone-7
Подписи для общего доступа (Shared Access Signatures): http://msdn.microsoft.com/library/ee395415.aspx
Вспомогательная серверная библиотека для пуш-оповещений (Push Notification Server Side Helper Library) http://create.msdn.com/en-US/education/catalog/article/pnhelp-wp7
Автор: @stasus
Microsoft
рейтинг 135,61
Microsoft — мировой лидер в области ПО и ИТ-услуг

Комментарии (1)

  • +1
    Microsoft молодцы, их стратегия интеграции между продуктами очень правильная.

    P.S. За новость спасибо.

Только зарегистрированные пользователи могут оставлять комментарии. Войдите, пожалуйста.

Самое читаемое Разработка

Интересные публикации