Please note that as of October 24, 2014, the Nokia Developer Wiki will no longer be accepting user contributions, including new entries, edits and comments, as we begin transitioning to our new home, in the Windows Phone Development Wiki. We plan to move over the majority of the existing entries. Thanks for all your past and future contributions.
Qt and Windows Phone Toolchain Overview
This article provides a high level comparative overview of the Windows Phone 7 and Qt SDKs and development toolchains. It is intended for Qt developers getting started with Windows Phone 7: it compares the WP7 and Qt development toolchain in order to gain a clear picture how to start WP7 development. Later it shows how to deploy apps on Windows Phone device, and demonstrates the usability of designing tools.
Windows Phone and Symbian Qt Development Tools
All the tools you need for Qt (Symbian and MeeGo Harmattan development) and Windows Phone 7 are available in their respective SDKs (WP developers may also wish to download the Windows Phone Toolkit).
The current SDKs are listed below:
(14 Feb 2014): See Qt#Qt_SDK for current information about Qt SDKs.
Nokia Original Imaging Effect Wiki Challenge (02 Aug 2014): Congratulations to Lee McPherson,Yassine Serhane, Venu Kumar,Sebastiano Galazzo, Rodrigo Díaz Tajada, Oliver Ulm, Kenneth Kau, and Philip Taffet for writing winning articles in the Nokia Original Imaging Effect Wiki Challenge. There were so many good effects that it was difficult to choose. Thank you to all who participated.
The Qt and WP7 toolchains offer similar functionality; both deliver an IDE, simulator for desktop environment and other tools for UI design and development. The table below shows the main elements of each toolchain.
|Features||Symbian Qt||Windows Phone 7|
|Developing Language||Qt C++/QML||C#/XAML|
|IDE||Qt Creator||Visual Studio 2010 Express for Windows Phone|
|Simulation||Qt Simulator||Windows Phone Emulator|
|UI Design||Qt Quick Designer, Qt Designer (in IDE)||Expression Blend|
|Other||XNA Game Studio for high performance games|
UI Design and Testing Tools
Windows Phone application UIs are defined in a markup language called XAML. Most developers prefer to edit the XAML visually in Expression Blend then (seamlessly) edit the C# application logic in Visual Studio (anecdotally, while you can edit XAML in Visual Studio 2010 the tools are not as good). The tools are very good and you can do almost everything you need to "graphically" - which is a good thing because the XAML is not easy to read and there are huge numbers of configuration options. The toolchain also makes it very easy to create simulation data and to use it (only) while testing.
High performance games are created using XNA Game Studio, which provides less application framework than XAML, but more direct access to device hardware.
Both environments provide an effective Simulator which can access the Internet and provide simulation data to an application under test.
Deploying applications to Windows Phone device and API Documentation
Windows phone devices must be registered before apps can be deployed (using Developer Registration Tool). For that we need a Windows Live ID and a valid Dev Center developer account as a prerequisite. And make sure that Zune is installed and running in the host computer where we have connected the device. We can use Visual Studio for application deployment, but the device must be registered. To deploy application, just select target Windows Phone Device in Visual Studio Standard toolbar and then press F5 to start deployment.
Related Topic on Qt to WP7
- Introducing Windows Phone Platform to Symbian Qt Application Developers
- Windows Phone Application Design Guidelines
- Windows Phone Developer and Designer Tools
- C# programming
- Introducing Windows Phone Application Life Cycle
- Porting Applications to Windows Phone
- Windows Phone Example Applications
- Using the API Mapping Tool
Note: This article has been created from the reference Windows Phone Interoperability by Microsoft and Nokia. You can find more information here.