Как создать мобильное приложение для windows phone. Разработка первого приложения для Windows Phone: Подготовка рабочего окружения

С сегодняшнего дня все разработчики могут пополнять магазин Windows 10. Если вы используете эту операционную систему, вы можете создать для нее собственное приложение. Регистрироваться в качестве разработчика не нужно, публиковать его в магазине тоже, но вы сможете пользоваться им сами или отправить его своим друзьям.

Как создать приложение для Windows 10?

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

Откроется начальная страница сервиса. Нажмите на «Windows 10» и выберите в разделе шаблонов «Empty App W10».

Придумайте своему приложению название, впишите его в соответствующее поле и нажмите «Start with this one!»

Вы перейдете в рабочую панель App Studio. Во вкладке «Content» вы можете наполнить приложение контентом из RSS-ленты любого сайта и различных сервисов (Facebook, Twitter, YouTube, Instagram, Flickr и так далее). Также можно использовать HTML-код.

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

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

Во вкладке «Tiles» настраивается живая плитка приложения. Вы можете загрузить иконки разных размеров.

Вкладка «Settings» - финальная. В ней можно выбрать язык приложения, добавить описание, привязать проект к своему аккаунту разработчика и активировать показ рекламы.

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


Когда приложение готово, жмите «Generate». App Studio создаст установочный файл и предоставит исходный код, который можно будет открыть в более серьезном инструменте - Visual Studio.

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

Скачайте с сайта Microsoft корневой сертификат и установите его. Затем зайдите в меню «Обновление и безопасность» параметров устройства и в разделе «Для разработчиков» включите «Режим для разработчика».


Откройте папку со своим приложением в проводнике, нажмите на файл Add-AppDevPackage правой кнопкой мыши, а затем на «Запустить с помощью PowerShell». Если с первого раза приложение не установится, попробуйте второй раз, должно получиться. После успешной установки оно появится в списке всех установленных приложений в стартовом меню. Можете запускать и пользоваться.

Последнее обновление: 31.10.2015

Windows Phone на сегодняшний день является одной из трех наиболее популярных ОС для смартфонов, в связи с чем возникает необходимость в приложениях различного рода для этой операционной системы. И хотя пока Windows Phone по популярности сильно уступает системам Android или iOS, в то же время количество устройств под управлением данной ОС растет в абсолютном выражении, что так или иначе рождает потребность в приложениях. Кроме того, есть сферы, где Windows Phone может составить конкуренцию другим системам, например, приложения для бизнеса.

Рассмотрим, что же нам потребуется для создания приложений для Windows Phone 8.1. А нам потребуется среда разработки Visual Studio Express 2013 for Windows c пакетом обновления не ниже SP2 (так как пакеты обновления от SP2 и выше по умолчанию содержат Windows Phone SDK 8.1). Также вместо экспресс-версии мы можем использовать другой более функциональный выпуск Visual Studio, например, Visual Studio Community , Professional или Ultimate .

В плане функционала для разработки для WP8.1 эти выпуски несильно отличаются, и в дальнейшем для всех примеров я буду использовать Visual Studio Express 2013 for Windows.

Кроме самой разработки нам также потребуются средства тестирования. Visual Studio по умолчанию предоставляет эмуляторы смартфонов, которые можно использовать для тестирования. Однако для подключения эмуляторов нам надо включить в BIOS режим виртуализации, затем в Windows необходимо включить Hyper-V, который имеет ряд ограничений. В частности, режим Hyper-V доступен только для 64-битных версий Windows 8 Pro и Windows 8 Enterprise. И если вашей ОС является Windows 8 Basic или Windows RT, то Hyper-V вы не сможете использовать.

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

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

Регистрация телефона

Чтобы зарегистрировать телефон, надо использовать утилиту , которая идет в комплекте Windows Phone SDK 8.1.

Для регистрации телефона выполним ряд шагов:

После успешной установки необходимого инструментария создадим первое приложение.

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

Подготовка к разработке требует наличия следующего ПО:

  • Visual Studio2010

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

  • Expression Blend

ПО является визуальным дизайнером, благодаря которому можно с легкостью работать со слоями, всевозможными шаблонами, стилем оформления и анимацией. Версия Expression Blend4 for WindowsPhone доступна для бесплатной загрузки. Стоит отметить, что Expression Blend является базой для XAML.

  • WindowsPhone SDK

С помощью данного пакета можно начинать процесс разработки.

  • WindowsPhone Emulator

Позволяет создать в эмуляторе со встроенным Internet Explorer9, оснащенным HTML5, приложения. Также с его помощью можно заниматься тестированием звонков и SMS-отсылок, а также поддерживать множество полезных функций, включая мультитач на мониторах, симуляцию камеры. Доступны для использования геолокационные сервисы. Однако в данном эмуляторе отсутствует поддержка медиаконтента Zune.

  • XNA Game Studio4.0

Благодаря этому ПО можно заниматься разработкой игр, как для консоли, ПК, так и для WindowsPhone. Библиотеки XNA Framework являются важной частью ПО, для которых характерно наличие управляемого кода.

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

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

  • WindowsPhone Developer Registration Tool.
  • WindowsPhone Profiler. С его помощью обнаруживаются неполадки с производительностью.
  • Silverlight Toolkit for WindowsPhone.

Особенности среды разработки

После того, как весь требуемый инструментарий будет установлен, разработчикам откроется доступ к многочисленным шаблонам приложений Silverlight for WindowsPhone. Данное ПО включает в себя, как полный набор технологических составляющих для разработки, так и Windows 8-style UI, что является эффективной концепцией дизайнерского оформления интерфейса и системы, позволяющей взаимодействовать с пользователем на высоком уровне. С его помощью можно создать запоминающийся и оригинальный стиль, который будет действительно выделять приложение среди многих других в сторе.

Существует три шаблона, которые олицетворяют три разных стилевых направлений, предназначенных для WindowsPhone:

  • Первый шаблон называется WindowsPhone Application, который является обычным примером диалогового приложения. Взаимодействие с пользователями осуществляется с помощью одного экрана.
  • WindowsPhone Pivot Application созданно в виде приложения, в котором присутствуют закладки. Каждая из закладок обладает своим заголовком, по которому можно определить содержимое. В качестве управляющего элемента используется Pivot.
  • WindowsPhone Panorama Application обладает своеобразной системой взаимодействия с пользователями, которая осуществляется через разделенные на панели зоны с горизонтальной прокруткой. Для данного шаблона характерно размещение изображения фона на всей панораме. Контент, размещенный на соседней панели с правой стороны, можно увидеть при отображении текущей. Panorama является управленческим элементом.

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

Подробнее о разработке приложений для Windows Phone можно узнать .

На сегодняшний день разработка приложений для W indows 10 M obile является одним из наиболее перспективных направлений.

Многие программисты переучиываются и осваивают эту область свой деятельности самостоятельно.

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

Поэтому мы разберем те шаги, которые должны предпринять .

Cодержание:

Вводная информация

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

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

Возможно, вы выучились в колледже или прошли какие-то курсы для .

Если это так, данная инструкция специально для вас.

Переходим непосредственно к теме разработки.

Разработчики Microsoft несколько лет назад сделали очень удобную вещь. Они создали так называемые универсальные приложения, а точнее, среду разработки для них.

Они подходят для абсолютно всех устройств, которые работают на .

На рисунке 1 то, что написано выше, показано на схеме.

Само существования универсальных приложений основывается на понятии UWP (Universal Windows Platform ).

Такие программы (Universal Apps ) подходят для самых разных устройств – ПК, мобильные аппараты, и так далее.

Они объединены такими компонентами:

  • Adaptive User Interface – адаптивный интерфейс, то есть такой внешний вид программы, который может самостоятельно меняться в зависимости от устройства, на котором он работает;
  • Natural User Inputs – набор устройств для ввода данных, таких как микрофон, стилус и подобное;
  • One SDK + Tooling – универсальная для разных устройств среда разработки и сопутствующий набор инструментов;
  • One Store + One Dev Center – один магазин, из которого можно взять приложения для разных девайсов, и один центр разработчиков;
  • Cloud Services – , благодаря которым можно организовать совместный процесс разработки или просто хранить программы и файлы в одном месте, доступном с разных гаджетов.

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

Основной его плюс состоит в том, что не нужно писать, к примеру, 2 отдельных и .

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

Поэтому такого понятия, как отдельная программа под W indows 10 M obile на сегодняшний день не существует в принципе.

Вместо него есть UWP .

Примечательно, что когда в обиходе была ОС W indows Phone (операционная система, которая предшествовала Win Mobile ), такого подхода не было предусмотрено. Приходилось делать программу под компьютер, а затем пытаться портировать (другими словами, адаптировать) ее для . Хотя в подавляющем большинстве случаев приходилось вести разработку с нуля. Как вы понимаете, это было крайне неудобно.

Благо, что сейчас все изменилось, и мы имеем универсальный способ программирования.

Теперь перейдем к практике.

Способы разработки под W indows 10 M obile

Исходя из вышесказанного, можно выделить три способа написать программу для W indows 10 M obile:

Cross-Platform . В программной среде Visual Studio (это один из инструментов разработчика, о которых мы поговорим в следующем разделе) есть такой компонент, как Xamarin. Так вот, благодаря нему есть возможность разрабатывать программы для Windows 10 Mobile, и одновременно. Перед разработчиком будут три экрана, в которых он сможет менять интерфейс своего творения. А программная логика будет оставаться неизменной. Используется C#.

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

Как видите, оптимальным является первый способ, особенно если речь идет о начинающем мастере кода.

Поэтому есть смысл разобраться, какие инструменты понадобятся для создания программы таким методом.

Что нужно для разработки – изучаем инструментарий

Все это вам нужно будет скачать прямо сейчас, чтобы начать творить! Скажем сразу, все это есть Microsoft .

Итак, вот что вам потребуется:

Visual Studio . Это среда разработки. Именно в ней вы будете писать код, видеть внешний вид будущего приложения, компилировать его (запускать иными словами) и так далее. Загрузить VS можно с сайта visualstudio.com . Там есть 3 версии – Community, Professional и Enterprise . Первая – бесплатная и в ней минимальный функционал. Но этого вполне хватит для того, чтобы заниматься разработками под Win 10 Mobile . Остальные две – платные и у них значительно расширен функционал.

Windows 10 Anniversary Update SDK . Это обновленный пакет инструментов, необходимых для разработки под весь ассортимент гаджетов, работающих на ОС Виндовс 10. Скачать его можно на сайте developer.microsoft.com . Этот компонент нужно просто установить после загрузки. Он автоматически «встроится» в VS .

Начинающим мастерам будет вполне достаточно Visual Studio Community в сочетании с Windows 10 Anniversary Update SDK.

Важно! Обязательно проверьте системные требования Visual Studio. Вполне возможно, ваш компьютер не потянет версию 2017. На том же сайте можно найти более ранние VS .

В будущем, когда вы освоите основные азы, можно будет также попробовать использовать Blend for Visual Studio.

Но это актуально, только если вы используете Visual Studio не 2017, а более старую версию.

В VS 2017 такой инструмент просто не имеет смысла. Там от него и так взято самое лучшее.

Лицензия разработчика и разблокировка

В нашем случае также потребуется лицензия разработчика. Это актуально если вы работаете на

Но она будет получена автоматически при компиляции первого приложения.

Так что ничего дополнительно делать вам не потребуется.

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

Конкретно нужно сделать следующее:

  • С помощью поиска найдите меню « Update & Security » («Обновления и безопасность» если по-русски).
  • Там в меню слева выберете « For developers » («Для разработчиков»).
  • Поставьте отметку возле надписи « Developer mode » («Режим разработчика»).

Иногда, если не выполнить это простое действие, возникают проблемы с дальнейшей работой.

Пример приложения – «Hello World»

Итак, чтобы написать ваше первое приложение, сделайте вот что:

1 Запустите установленную Visual Studio. Выберете «Файл », затем «Создать» и «Проект» .

2 Откроется окно «Создание проекта» . Нажмите на панели слева «У становленные » , затем кликните «Visual C++ » (мы пока что будем использовать именно этот язык) и дальше пункт «Универсальные приложения для Windows » .

3 В центральной части открытого окна оставьте все как есть. Там должен быть выбран пункт «Пустое приложение…» .

4 Внизу введите название проекта, расположение исходников и имя ярлыка.

5 Нажмите «ОК» в левом верхнем углу.

6 На панели слева вы найдете список всех файлов проекта. Не вдаваясь в подробности, скажем, что код пишется в файле с расширением.xaml. В нашем случае это «MainPage.xaml». Откройте его, и в центральной части появится поде для кода.

  • - элемент « StackPanel» является своеобразным контейнером для других элементов, здесь мы указываем его длину и высоту;
  • Hello World» FontSize=»36″/>Hello World» и 36 шрифтом;
  • - текстовый блок со словами « What’s your name?»;
  • - еще один StackPanel со своими параметрами;
  • - поле для ввода текста;
  • - закрытие первого StackPanel;
  • - закрытие второго StackPanel.

8 Нажмите кнопку «F5 » на клавиатуре, чтобы увидеть, как работает программа.

Таким образом вы написали свою первую программу. Теперь необходимо уделить огромное количество времени изучению основ программирования и отрасли, которую вы выбрали. Нужно идти дальше. Если вы учитесь в каком-то учебном заведении, где преподают Windows или имеете возможность пройти дополнительные курсы, воспользуйтесь тем матриалом, который вам дадут. А если нет, мы составили для вас список лучших книг и статей, которые можно найти в интернете, чтобы обучиться самостоятельно.

Есть мнение, что в реальной жизни смартфоны с ОС от Microsoft встречаются так же часто, как люди с отчеством «Артёмович». Странная (мягко говоря) политика «Корпорации зла» в отношении седьмого и восьмого семейств мобильной операционной системы отвратила множество пользователей от экспериментов с «окошками» для смартфонов, и сейчас корпорация всерьез взялась за исправление своего имиджа в этой пользовательской нише. Как подпольный фанат Microsoft я надеюсь, что у них все получится - «десятка» шагает по планете, ее главный козырь - одно ядро для всех платформ, и поэтому у нее есть все шансы перетянуть на себя хорошую часть мобильного рынка. А как программист я с удовольствием сделаю для тебя вводную статью по разработке под эту мобильную ось, чтобы ты всегда был готов к росту ее популярности:).

Обзор архитектуры

Благодаря общему ядру и системе выполнения приложений UWP однажды написанное приложение будет работать на всех девайсах под управлением Windows 10. В этот диапазон входят:

  • настольные компьютеры;
  • серверные системы - ОС Windows Server 2016;
  • ноутбуки - MS Surface Book;
  • планшеты - MS Surface Pro;
  • смартфоны - Lumia;
  • игровые приставки - Xbox One;
  • очки дополненной реальности - MS HoloLens;
  • настенные планшеты - MS Surface Hub;
  • умные часы - MS Band 2.

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

UWP поддерживает драйверы как уровня ядра, так и пользовательского уровня. Подсистема включает интерфейсы драйверов устройств (Device Driver Interface - DDI), из числа которых драйвер для UWP может использовать.

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

Инструменты разработчика

Для написания, отладки, развертывания и тестирования приложений под Windows 10 Mobile тебе понадобится Visual Studio 2015 (кто бы сомневался). Этим летом вышел третий апдейт. Категорически рекомендую! Основной его багфикс - это уменьшенное потребление памяти по сравнению со вторым апдейтом.

Также тебе понадобится Windows 10 Anniversary Update SDK : он включает все необходимые инструменты для разработки приложений под весь парк устройств, работающих на Windows 10. Если же используется VS 2015 с третьим обновлением, тогда в нее уже входит новейший SDK.

Одно из главных новшеств - это чернила Windows (Windows Ink). С помощью этого API можно двумя строчками кода добавить поддержку пера. Для этого существуют два объекта управления: InkCanvas и InkToolbar.

Новый Cortana API упрощает реализацию управления голосом. Компонент Cortana Actions в новом API позволяет создавать новые фразы/выражения.

Биометрическая аутентификация Windows Hello теперь стала доступна веб-разработчикам в браузере Edge.

Средство для моделирования пользовательских интерфейсов Blend for Visual Studio 2015 предоставляет расширенные возможности построения интерфейса по сравнению с VS. С его помощью на языке XAML можно создавать макеты всех поддерживаемых приложений: прикладных, веб, универсальных, мобильных и так далее. Также он содержит конструкторы для дополнительных задач, среди них создание анимации и управление поведением элементов.

Способы создания приложений для Windows 10 Mobile

Основной способ создания приложений для смартфонов с Windows 10 Mobile - это разработка универсальных (UWP) приложений (свиток Visual C# → Windows → Universal мастеры создания проекта).

Однако он не единственный. Как ты знаешь, в Visual Studio 2015 встроен Xamarin, с его помощью тоже можно создавать приложения для Windows 10 Mobile, одновременно для Android и iOS, меняя интерфейс и оставляя программную логику на C# (Visual C# → Cross-Platform).

Кроме языка Visual C#, равнозначно может быть выбран Visual Basic или Visual C++. VS 2015 позволяет создавать универсальные приложения с помощью JavaScript (JavaScript → Windows → Универсальные приложения). Их также можно развернуть на устройстве с Windows 10 Mobile.

Инструменты для работы с унаследованными проектами

За долгую историю операционной системы Windows для нее было создано колоссальное количество самых разных приложений. С выходом Windows 8 и WinRT (а позже Windows 10 и UWP) старые классические приложения остались в прошлом, поскольку только в настольных Win 8 и Win 10 поддерживаются классические Win32-, COM-, .NET-приложения. От этого в Microsoft стало грустно. Но ребята смекнули, что могут разработать конвертер, который будет преобразовывать старые приложения для новой продвинутой UWP-подсистемы. Из этого родился Desktop App Converter .

Преобразование Xcode-проекта выполняется в два шага. Сначала надо добавить подсветку синтаксиса языка Objective-C в Visual Studio: установить расширение objc-syntax-highlighting.vsix из папки winobjc\bin. Затем с помощью утилиты командной строки vsimporter.exe надо преобразовать проект на Xcode в проект на VS. После этого полученный sln-файл можно открыть в студии, где синтаксис Objective-C будет подсвечен. Можешь построить и запустить приложение, оно будет выполняться так же, как все другие Windows-программы.

Разрази меня гром, как это удивительно - видеть в Visual Studio корректно подсвеченный код Objective-C!

Для компиляции кода Obj-C используется свободный компилятор Clang . Поскольку на выходе получается стандартное UWP-приложение, его можно запустить на мобильном устройстве в среде Windows 10 Mobile. В одной программе может быть код на C++ и на Obj-C.

Если у тебя есть проект для прошлой версии Windows Phone, то есть 8.1 (или 8.0), то, когда ты его откроешь в VS 2015, студия автоматически обновит проект, чтобы он соответствовал требованиям универсального приложения Windows (UWP). Будет преобразована не только разметка пользовательского интерфейса на XAML, но и вместе с ней программная логика на JS/C++/C#/VB. Если в коде были вызовы подсистемы WinRT, тогда они будут преобразованы в вызовы UWP.

Есть еще распространенный тип приложений - игры. iOS и Android визуализируют посредством низкоуровневого интерфейса OpenGL. С другой стороны, на Windows 10 Mobile для вывода изображения в играх используется DirectX 11. Получается несовместимость. Но есть решение - открытый проект ANGLE . ANGLE (Almost Native Graphics Layer Engine) - движок почти нативного графического слоя - позволяет пользователям Windows бесшовно запускать OpenGL ES приложения на аппаратуре, работающей с DirectX 11. Это достигается путем преобразования вызовов с OpenGL ES API на DirectX 11 API. ANGLE полностью поддерживает следующие три типа приложений:

  • универсальные приложения для Windows 10 (Universal Windows apps);
  • приложения для Windows 8.1 и Windows Phone 8.1;
  • классические приложения для рабочего стола Windows (Windows desktop applications).

Более подробно вопрос рассматривается в моей книге «Волшебство момента вращения » (опять ты книгу свою пиаришь! Ну лаадно, заслужил. - Прим. ред.).

Продолжение доступно только подписчикам

Вариант 1. Оформи подписку на «Хакер», чтобы читать все материалы на сайте

Подписка позволит тебе в течение указанного срока читать ВСЕ платные материалы сайта. Мы принимаем оплату банковскими картами, электронными деньгами и переводами со счетов мобильных операторов.