Как создать свое первое приложение для Windows Phone. Пример разработки на конструкторе Microsoft App Studio. Свое приложение для Windows Phone? Легко! Разработка под windows phone 10

Телефоны на Windows 10 Mobile появились с существенной задержкой относительно Android и iOS, пообещав за потерянное время лучшие возможности. Обещание оказалось пустым, а ведь это был ключевой момент в развитии Windows, как универсальной системы для всех устройств. Более того, приложения в Windows 10 остаются настолько инородными, что даже спустя столько лет существования Microsoft Store остаётся в разы беднее App Store и Google Play.

Тем не менее, говорить о том, что умение разрабатывать приложения для Windows 10 бесполезно – преждевременно. Во-первых, у Microsoft есть желание в 2017-2018 году запустить серию мобильных телефонов под линейкой Surface, рассчитанную на бизнес-аудиторию, то есть занять нишу, освобождённую после ухода с рынка BlackBerry.

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

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

Знакомство

Первым делом поближе познакомьтесь со универсальной платформой для приложений, которая с этого места будет носить своё официальное название – Universal Windows Platform или просто UWP. Появилась она ещё во времена Windows 8, а сегодня обросла всеми необходимыми удобствами. Концепция хоть и носит лозунг «одно приложение для всех устройств», но для хорошего приложения ориентироваться на отдельный тип всё-таки придётся. В общем, все возможности и ограничения UWP вы узнаете если прочитаете официальный релиз от Microsoft:

Язык

В информационном листе Microsoft вы можете найти следующую фразу: «Вы можете создавать приложения UWP на тех языках программирования, с которыми вы знакомы лучше всего…». Фактически, это не совсем так. Вам на выбор предлагаются 4 из них: C# , Visual Basic , C++ и JavaScript . Безусловно, это лучше, чем строгое ограничение, но универсальностью это назвать затруднительно.

Кстати, справочники по всем четырём языкам можно найти непосредственно на сайте Microsoft или просто нажав на предоставленные ссылки. Также на нашем сайте вы можете пройти бесплатный .

Программное обеспечение

Главное детище Microsoft, ориентированное на разработчиков приложений для всевозможных платформ – Visual Studio. Скачать его можно также с официального сайта , выбрав подходящую версию. Как с ним работать, какие в вашем распоряжении могут быть инструменты, а главное куда надо нажимать, вы узнаете из руководства . Обязательным для скачивания будет и пакет SDK . На этой же странице вы найдёте всю интересующую информацию по работе с ним.

Есть и альтернативный вариант создания приложения для Windows 10 для тех, кому окунаться в мир Visual Studio немного рано. Знакомьтесь, Windows App Studio . Фактически, это конструктор приложения с набором шаблонов, который поможет быстро визуализировать вашу идею.

Оформление

Как и положено уважаемой компании, Microsoft выпустил для своих разработчиков достаточно подробное руководство по оформлению приложений UWP. Здесь вы найдёте ответы на все интересующие вопросы: от типовых размеров экрана до описания командных элементов, от стандартных цветов до шаблонов Adobe Photoshop и Illustrator.

Разработка приложения

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

Литература

В конце перечислим несколько популярных книг и ресурсов, которые помогут создать идеальное приложение для Windows:

Windows 10 Development for Absolute Beginners – как понятно из названия, эта книга посвящена желающим создать своё первое приложение именно на Windows 10;

Building Windows 10 Applications with XAML and C# Unleashed (2nd Edition) , Adam Nathan – и вновь название книги красноречиво отражает её содержание;

Real World Windows 10 Development , Edward Moemeka, Elizabeth Moemeka – полноценный гид по разработке приложения для Windows 10, начинающийся с обзора самой ОС, её преимуществ и недостатков, и завершающийся верификацией и выгрузкой созданного вами объекта;

Location Intelligence for Windows Store apps , Ricky Brundritt – подробное руководство по разработке приложений для Windows. Посвящена 8 части ОС, поэтому периодически необходимо сверяться с официальной документацией, что ничуть не снижает ценности данной литературы;

– в книге довольно обще описается жизненный цикл Windows-приложения и куда подробнее – сторонних функций и инструментов;

Форум разработчиков Windows – задать вопросы и обсудить насущные проблемы разработки;

A Developer"s Guide to Windows 10 – часовой видеоурок, который поможет разобраться во всех тонкостях;

Есть мнение, что в реальной жизни смартфоны с ОС от 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. Присоединись к сообществу «сайт», чтобы читать все материалы на сайте

Членство в сообществе в течение указанного срока откроет тебе доступ ко ВСЕМ материалам «Хакера», увеличит личную накопительную скидку и позволит накапливать профессиональный рейтинг Xakep Score!

Япония была более чем заметно затронута итогами Второй Мировой войны. В 1946 году правительство заморозило все личные вклады населения и ввело карточки на многие виды товаров, в том числе и на продовольствие. Два года спустя американские власти решил...

Продаются такие машины и в Российской Федерации, несмотря на то что, в отличие от других стран, здесь их владельцы не получают налоговых льгот. Наши соотечественники в массе своей относятся к подобным «модным штучкам» с прохладцей, тем не менее BMW в...

В 1927 году Джованни Агуста умер, оставив новое предприятие своей жене Гуссепине и 20-летнему сыну Доменико. Молодой граф увлекался мотоциклами. А когда к концу Второй мировой войны стало ясно, что в Италии одной только авиационной промышленностью бу...

Казалось бы, Ducati и чоппер – вещи совершенно несовместимые. Но ведь кто-то же ездит на круизерах! И таких людей немало. И бабок за такие байки, стало быть, они выкладывают – дай Боже сколько! Так что, отдавать на откуп конкурентам весь этот сегмент...

Джуджиро Мацуда (Jujiro Matsuda) дважды открывал кузню, но обстоятельства складывались так, что дело приходилось закрывать. Лишь в 1920 году Мацуда с группой инвесторов приобрел в Хиросиме разорившуюся строительную компанию Abemaki, занимавшуюся про...

Но исключения из правил все же находятся. Toyota Land Cruiser Prado 2002 модельного года при своем «городском» стиле способен преодолеть даже серьезное бездорожье. Одно только сочетание слов «Land» и «Cruiser» позволяет отнести модель к разряду вмест...

События — Subaru Impreza WRX

Созданный поражать Название Impreza происходит от английского слова impress, в переводе означающего «произвести впечатление», «поразить». А добавка WRX говорит о том, что это – одна из наивысших модификаций модели Subaru Impreza. Впервые она была пре...

В декабре 1887 года в крестьянской семье под Миланом родился мальчуган, который с детства интересовался не столько сельским трудом, сколько модной тогда техникой с бензиновыми двигателями. В 15 лет Джузеппе Джилера (а это был именно он) устроился на...

Она первой в Японии получила систему распределенного впрыска топлива. Существовал и вариант с дизельным двигателем, который стал первым в мире подобным автомобилем класса Gran Turismo. В наши дни эта машина является настоящей классикой и предметом об...

Белая полоса – черная, и снова белая – черная. Вверх-вниз, вверх-вниз. Это не аттракцион в «Луна-парке», а течение жизни одного из лучших гонщиков «Формулы 1». 17 сентября 1960 года в Лондоне в семье будущего двукратного чемпиона мира «Формулы-1» Гр...

Но «Сузуки» не всегда была фирмой, производившей моторы. Все начиналось прозаично и очень в духе минималистичной Японии. В небольшой богом забытой деревушке Хамаматцу в префектуре Шизуока (той самой, откуда родом был Соичиро Хонда – основатель друго...

Как оказалось, они имеют сходные взгляды, поэтому сразу стали сотрудничать. Днем рождения Volvo считается 14 апреля 1927 года – день, когда с завода в Гетеборге выехал первый автомобиль под названием Jacob. Это событие знаменовало рождение новой швед...

Механики Иоганн Винкельхофер и Ричард Йенике в феврале 1885 года под торговой маркой Wanderer начали выпуск велосипедов собственной, оригинальной конструкции, которые стали очень популярными. В результате повсеместной моторизации в 1902 появились пер...

Renault F1 Team. Параллельные – сходятся! Французская линия, прерывистая

На заре «Формулы 1» на ее трассах доминировали команды автомобильных корпораций. «Альфа-Ромео», «Мазератти», «Феррари» – никто не сомневался, что их автомобили будут в фаворитах. Потом какие-то заводские команды уходили из Королевских гонок, взамен п...

История бренда, или Почему авто с шильдиком «TRD» нельзя считать обычными «Тойотами» 7 июня 1954 года, когда еще ни Corolla, ни Crown не было в «арсенале» молодой и неизвестной за пределами Японии компании Toyota, а Land Cruiser даже не думал обзаво...

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

UWP (Universal Windows Platform) представляет собой унифицированную платформу для создания и запуска приложений в Windows 10 и Windows 10 Mobile.

UWP стала результатом фолюции более ранних технологий. Так, с выходом Windows 8 была внедрена новая архитектурная платформа для приложений - Windows Runtime (WinRT), которая позволяла запускать приложения в так называемом режиме Modern (Metro) на десктопах, планшетах. Затем с выходом Windows 8.1 и Windows Phone 8.1 эта технология получила развитие - появились "универсальные приложения", которые можно было запускать сразу Windows 8.1 и WP8.1. И в июле 2015 года официально вышла новая ОС Windows 10. Она использует платформу UWP, которая представляет собой развитие Windows Runtime.

Как подсказывает название платформы, она является универсальной - универсальной для всех устройств экосистемы Windows 10. А это обычные дестопы, планшеты, мобильные устройства, устройства IoT (интернет вещей), Xbox, устройства Surface Hub. И приложение UWP может одинаково работать на всех этих платформах, если на них установлена Windows 10.

Почему UWP?

Программирование под UWP несет ряд преимуществ:

    Широта распространения . На текущий момент (апрель 2017) Windows 10 установлена уже более чем на 400 миллионах устройств. На десктопах Windows 10 уже опередила Windows 8/8.1.

    Поддержка широкого круга устройств . Десктопы, планшеты, смартфоны, большие планшеты Surface Hub, различные IoT-устройства, в перспективе устройства виртуальной реальности HoloLens - круг устрйоств, на которых может работать Windows 10 действительно широк.

    Поддержка разных языков и технологий программирования . UWP-приложения можно создавать с помощью таких языков, как Visual C++, C#, Visual Basic, JavaScript. В качестве технологии для создания графического интерфейса Visual C++, C# и Visual Basic используют XAML, JavaScript применяет HTML. Кроме того, С++ может вместо XAML использовать DirectX. То есть достаточно распространенные и и знакомые многим технологии.

    Магазин приложений и удобство распространения . Windows Store представляет собой прекрасное место для распространения UWP-приложений, как платных, так и бесплатных. Сами возможности платформы и магазина Windows Store позволяют использовать разные способы монетизации. Например, можно интегрировать в приложения блоки для показа рекламы через различные SDK. Можно распространять за определенную плату, причем оплату можно гибко настраивать. При необходимости можно встроить предоставление ознакомительной версии, после использования которой пользователь может решить, покупать приложение или нет. И также можно монетизировать по модели freemium, при которой приложение условно бесплатное, а отдельные услуги внутри приложения предоставляются за определенную плату. Причем все эти возможности монетизации обесечиваются встроенными инструментами SDK.

    Богатые возможности платформы . UWP многое наследует от Windows Runtime из Windows 8.1 и в то же время предоставляет много новых функцональностей, как, более богатые возможности по интеграции с облаком, использование Cortana, системы уведомлений в Win10 и многое другое.

Что необходимо для разработки под UWP

Для программирования под UWP необходима ОС Windows 10. Все другие операционные системы, как Windows 8.1/8/7, не говоря уже о Windows XP, не подходят !

Также потребуется среда разработки Visual Studio 2017 Community. Это полнофункциональная бесплатная среда разработки, которую можно загрузить с официального сайта по адресу https://www.visualstudio.com/downloads/download-visual-studio-vs .

Также можно использовать версию VS 2015, а все остальные предыдущие версии Visual Studio - 2013, 2012, 2010 и т.д. с UWP не работают.

При установке Visual Studio 2017 в программе установщика необходимо отметить соответствующий пункт:

Перед чем как начать создание приложений, убедитесь, что в центре обновления в Windows 10 установлена соответствующая опция для разработчиков:

И имея Windows 10 и установленную Visual Studio 2017, можно приступать к разработке приложений.

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

Запустим Visual Studio Express 2013 for Windows. В меню выберем File->New Project.. . Перед нами откроется окно создания проекта:

В левой части окна выберем Visual C#->Store Apps-> Windows Phone Apps . А среди шаблонов нового проекта выберем Blank App (Windows Phone) , дадим какое-нибудь название проекту, например, назовем его HelloApp. И нажмем ОК.

И Visual Studio создаст новый проект:

Проект по шаблону Blank App по умолчанию имеет следующие узлы:

    Каталог Assets , содержащий используемые файлы изображений

    App.xaml и App.xaml.cs - файл ресурсов приложения на xaml и файл кода приложения на c# соответственно

    MainPage.xaml и MainPage.xaml.cs - файл графического интерфейса окна приложения и файл кода окна на c# соответственно

    Package.appxmanifest - файл манифеста приложения

На данном начальном этапе пока для нас ценность представляют файлы MainPage.xaml и MainPage.xaml.cs . Откроем файл MainPage.xaml, который представляет графический интерфейс:

Слева в виде телефона у нас будет окно графического дизайнера. Справа - окно разметки графического интерфейса на языке xaml. Графический интерфейс в данном случае представлен классом MainPage, который представляет собой отдельную страницу. Все изменения по интерфейсу, которые мы сделаем, тут же будут отображаться в графическом дизайнере, который даст нам визуальное понимание того, как в итоге будет все выглядеть.

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

Loading...Loading...