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

На прошлой неделе на конференции BUILD мы анонсировали, что теперь вы можете разрабатывать приложения для Windows Phone 8.1, используя HTML, CSS и JavaScript, применяя ту же технику, что используется при разработке магазинных приложений для Windows 8.1 сейчас. Чтобы помочь вам создавать эти приложения, мы сделали множество улучшений в Visual Studio 2013 и Blend для Visual Studio 2013. В этой статье мы уделили внимание отличным и новым улучшениям, которые могут оказаться полезными с особым акцентом на технологию универсальных Windows приложений. 

Универсальные приложения
С последними обновлениями в Windows 8.1 и Windows Phone 8.1 вы можете создавать универсальные Windows приложения для общей среды выполнения Windows используя XAML/C#/C++/VB или HTML/JS. Практически говоря, это означает, что вы можете поделиться большей частью или всем кодом и активами между магазинными приложениями Windows 8.1 и Windows Phone 8.1. Чтобы сделать это совместное использование проще, в Visual Studio 2013 Update 2 RC мы добавили новый тип проекта под названием Универсальное приложение. Универсальные приложения дают улучшенную структуру проекта, что делает его более простым для вас, чтобы поделиться своим общим кодом между платформами, отделяя специфичный для каждой конкретной платформы HTML, CSS и JavaScript код.
Мы поддерживаем три шаблона универсальных приложений Windows, чтобы вы могли начать.
7180.Universal_2D00_App_2D00_Project_2D00_Templates_5F00_3FD7B84A[1]
Шаблон Blank App включает в себя только самое необходимое, чтобы вы могли поместить в него свой код и активы. Шаблон Hub/Pivot App даёт хороший пример отображения идентичного контента в различных контейнерных элементах управления. Шаблон Navigation App снабжён инфраструктурой для создания навигации в одностраничном приложении (SPA —  single page app). Вы можете узнать больше об этих видах проектов на MSDN.
Первое, что вы заметите в универсальных приложениях — это структура проекта.
2605.Universal_2D00_App_2D00_Project_2D00_Structure_5F00_42144106[1]
Вы можете видеть три узла проекта: один для магазинного Windows, один для Windows Phone и совместный. Код и контент специфичные для магазинного Windows будут находиться в проекте для магазинного Windows. Аналогично, код и контент специфичные для Windows Phone будет находиться в вашем проекте для Windows Phone. Совместный проект будет содержать весь код и контент, которые предназначены для совместного использования в проектах для магазинного Windows и Windows Phone.
Как только вы создали свой ​​проект, вы, вероятно, хотите сосредоточиться на создании вашего приложения для каждой платформы в отдельности. Контекстный переключатель, расположенный в панели навигации в верхней части общих файлов, позволяя переключаться на платформу, на которой вы сейчас сконцентрировались, что даст лучший опыт написания кода, в том числе работу IntelliSense для того API, которое работает на текущей платформе:
0181.Current_2D00_Platform_5F00_5D4C9A07[1]
Например, если вы переключитесь на написание кода для Windows 8.1, Visual Studio не покажет вам API, которые работают только в Windows Phone 8.1. Когда есть API, которые не существуют на всех ваших целевых платформах, Visual Studio помечает эти API для Вас:
5282.Flags_2D00_on_2D00_APIs_2D00_that_2D00_dont_2D00_exist_2D00_on_2D00_all_2D00_your_2D00_target_2D00_platforms_5F00_71D1E985[1]
Вы можете узнать больше о контекстном переключателе вместе с другими отличными советами для создания универсальных приложений в следующей видеозаписи с конференции Build.

Панель устройства
В программе Blend панель устройства даёт вам возможность предварительного просмотра вашего приложения в различных ориентациях, разрешениях, размерах без необходимости загрузки на различные устройства. Панель устройства теперь поддерживает телефонные приложения. Теперь вы можете видеть обновленный набор конфигураций устройств, применимых к телефонам в списке доступных дисплеев. Кроме того, есть конфигурации тем и акцентных цветов Windows Phone.
1565.Configuration_2D00_for_2D00_Windows_2D00_Phones_2D00_Themes_2D00_and_2D00_Accent_2D00_Colors_5F00_5869E64B[1]

Отладка и диагностика
Все возможности для отладки и диагностики магазинных приложений Windows доступны также и при разработке Windows Phone приложений:
5635.Debugging_2D00_and_2D00_Diagnostics_2D00_features_5F00_53F36584[1]
Одной из областей, которая особенно важна для мобильных устройств является производительность приложения. Инструмент анализа скорости отклика пользовательского итерфейса и инструмент анализа использования памяти помогут вам в диагностике проблем производительности. Инструмент анализа скорости отклика пользовательского интерфейса показывает вам чёткую диаграмму на которой ваше приложение затрачивает время на отрисовку визуального представления вашего приложения. Инструмент анализа использования памяти позволяет увидеть где память выделяется, освобождается и используется в течение длительного времени.

Дизайнер манифеста
Важной частью определения внешнего вида вашего приложения является обеспечение визуальными активами, такими как логотип и заставки, выделяющими ваше приложение из массы. Дизайнер манифеста позволяет легко обеспечить ваше приложение соответствующими активами для Windows Phone. Если вы создаете универсальный проект, дизайнер манифеста позволяет указать визуальные активы, как для Windows Phone приложения, так и для приложения магазинного Windows.
2110.Manifest_2D00_Designer_5F00_1CACDE49[1]

Где взять
Для начала разработки приложения, поддерживающего магазинные приложения Windows и Windows Phone приложения с HTML, используя универсальные проекты, установите Visual Studio 2013 Update 2 RC. Если у вас ещё нет Visual Studio 2013, вы можете бесплатно скачать Visual Studio Express 2013 for Windows с обновлением Update 2.

Перевод статьи: «Building Windows Phone 8.1 Apps in HTML»
Авторы: Jordan Matthiesen (@JMatthiesen) и Kirupa Chinnathambi (@kirupa) — Программные менеджеры комады клиентской платформы внутри Visual Studio.
Перевёл: С. Урусов

Добавить комментарий

Ваш e-mail не будет опубликован. Обязательные поля помечены *