Qt теперь и на Windows Phone

в 19:42, , рубрики: mobile development, nokia, nokia lumia 920, qt, Qt 5.3, Qt Software, windows phone, разработка под windows phone, метки: , , , , , ,

Qt теперь и на Windows PhoneПоддержка разработки мобильных приложений — одно из главных направлений совершенствования Qt. Готовится к выпуску Qt 5.3 и QtCreator 3.1, которые благодаря поддержке WinRT позволят запускать Qt-приложения на новых платформах. Но не дожидаясь релиза уже сейчас можно скачать Qt 5.3 beta и собрать Ваши приложения для мобильных платформ Windows. Новые инструменты позволяют запускать приложения как в эмуляторе, так и непосредственно на подключенном устройстве. Благодаря этому сегодня автор статьи (незнакомый ранее с разработкой для мобильных устройств) собрал первое в своей жизни (пусть и из папки demos) мобильное приложение. Этот факт может служить доводом в пользу разработки приложений под Windows Phone с использованием инструментария Qt. Статья, по моему скромному мнению, будет интересна как опытным разработчикам Windows Phone приложений, так и программистам, которые ранее разрабатывали только Desktop приложения с использованием Qt.

Установка необходимого ПО

1. Прежде всего необходимо скачать и установить Qt 5.3 beta для WinRT (файл qt-opensource-windows-x86-winrt-5.3.0-beta.exe )

Скриншот окна установки с выбором компонентов

Qt теперь и на Windows Phone

2. Если у вас еще не установлен Microsoft Visual Studio 2012 или 2013, то необходимо будет скачать и установить одну из этих версий, для описываемых в статье целей подходит как Microsoft Visual Studio Express 2013 для Windows Desktop так и Microsoft Visual Studio Express 2012 для Windows Desktop.
Примечание: если вы устанавливаете VS2013 Professional или Ultimate, то не забудьте в опциях установки включить поддержку разработки Windows Phone приложений.

Скриншот окна установки MSVS 2013 Express

Qt теперь и на Windows Phone

3. Для Visual Studio Express также понадобится с страницы загрузок Windows Phone SDK скачать и установить необходимый Вам SDK (так как у меня под рукой оказалась Nokia Lumia 920 c Windows 8 на борту, то я установил SDK 8.0, который также поддерживает Windows Phone 7.5).
Вроде все готово, можно запускать QtCreator.

Новое в Qt 5.3 beta и QtCreator 3.1 RC1 для мобильных Windows платформ

Прежде всего это новый плагин WinRT (на всякий случай проверьте, активирован ли он):

Qt теперь и на Windows Phone

Теперь при создании нового проекта в ниспадающем списке фильтров шаблонов появляются новые строчки:

Qt теперь и на Windows Phone

Создавая проект теперь можно выбрать дополнительные типы сборок (на рисунке не указана WinRT сборка, так как в данной статье она не рассматривается):

Qt теперь и на Windows Phone

Запустив на выполнение первый тип сборки приложение сразу будет отправлено на подключенное Windows Phone устройство, как показано на видео:

Второй тип сборки (как видно из названия) отправляет приложение на эмулятор:

Qt теперь и на Windows Phone

Возможные проблемы и их устранение

Если ряд необходимых компонентов, перечисленных выше, отсутствует, то вам об этом сообщит вот такой красный предупреждающий кружок в IDE QtCreator:

Qt теперь и на Windows Phone

Но помимо этого существует и рад других возможных проблем, о которых стоит упомянуть (и с которыми автор столкнулся лично).
Во-первых, понадобится включить Hyper-V (если он еще не включен). Руководство: How to enable Hyper-V for the emulator for Windows Phone 8.
Второе, с чем может столкнуться разработчик, — это 2 сообщения об ошибках при запуске эмулятора:

Qt теперь и на Windows Phone
Qt теперь и на Windows Phone

Обычно у разработчика установлена не одна программа виртуализации (на подобии VMWare или Virtual Box). Так как эмулятор также использует сетевой интерфейс, то может возникать конфликт с созданными этими программами сетевыми интерфейсами. Проблема обычно решается удалением этих программ или более тонко, используя программу «Диспетчер Hyper-V», как описано в руководстве Troubleshooting the Windows Phone 8 Emulator.

Третья потенциальная проблема связана уже непосредственно с Qt. Запуская сборку для устройства может появиться такое сообщение:

Qt теперь и на Windows Phone

открыв файл WMAppManifest.xml можно убедиться, что ProductID действительно отсутвует:
Qt теперь и на Windows Phone
но в сборку для эмуляции ProductID записывается, поэтому можно его скопировать и вставить в XML файл:
Qt теперь и на Windows Phone
после этого запуск должен происходить без проблем.

Я не совсем уверен, нужно ли это для успешного запуска приложения на устройстве, но перед сборкой я зарегистрировал устройство (Nokia Lumia 920) с помощью Windows Phone Developer Registration

Qt теперь и на Windows Phone

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

P.S. а вот так выглядит иконка Qt-приложения в Windows Phone. Всем удачных сборок!

Qt теперь и на Windows Phone

Автор: snasoft

Источник

Поделиться

* - обязательные к заполнению поля