BlackBerry: Difference between revisions

From Qt Wiki
Jump to navigation Jump to search
No edit summary
 
No edit summary
Line 1: Line 1:
=Qt for BlackBerry=
[[Category:BlackBerry]]


==Introduction==
[toc align_right="yes" depth="2"]


Qt can be used for application development for the recent BlackBerry platform. This includes phones running the BlackBerry 10 operating system as well as the PlayBook. <br /> This page is thought to serve as a '''starting point''' for all those who are interested in developing with Qt on BlackBerry 10 and PlayBook OS.
= Qt for BlackBerry =


==<span class="caps">QNX</span> as a base OS for BlackBerry 10 and PlayBook OS==
== Introduction ==


Compared to older BlackBerry products running BlackBerry OS based on Java, BlackBerry 10 and PlayBook OS use [http://en.wikipedia.org/wiki/QNX <span class="caps">QNX</span>] ''[en.wikipedia.org]'' as their base OS and support native development in C and C++. A large number of additional system and platform specific <span class="caps">API</span>s and services are provided on top of the standard <span class="caps">QNX</span> package. For more information see [http://www.qnx.com/download/feature.html?programid=9344 <span class="caps">QNX</span> Neutrino <span class="caps">RTOS</span> User’s Guide] ''[qnx.com]'' and [http://www.qnx.com/download/feature.html?programid=19516 Getting Started with <span class="caps">QNX</span> Neutrino] ''[qnx.com]''.
Qt can be used for application development for the recent BlackBerry platform. This includes phones running the BlackBerry 10 operating system as well as the PlayBook.<br />This page is thought to serve as a '''starting point''' for all those who are interested in developing with Qt on BlackBerry 10 and PlayBook OS.


Qt on <span class="caps">QNX</span>, Qt on BlackBerry 10 and Qt on PlayBook OS share the same code base which is a part of every upstream Qt release since Qt 4.8. Even if slightly hidden in the shadow of mobile buzz, Qt on top of <span class="caps">QNX</span> is used by a growing number of <span class="caps">QNX</span> projects in many industries. Qt Creator supports working with <span class="caps">QNX</span> Neutrino devices as well, see [[Setting-up-Qt-Creator-for-QNX|Setting up Qt Creator for <span class="caps">QNX</span>]] for more details.
== QNX as a base OS for BlackBerry 10 and PlayBook OS ==


==Qt on BlackBerry 10==
Compared to older BlackBerry products running BlackBerry OS based on Java, BlackBerry 10 and PlayBook OS use &quot;QNX&amp;quot;:http://en.wikipedia.org/wiki/QNX as their base OS and support native development in C and C+''. A large number of additional system and platform specific APIs and services are provided on top of the standard QNX package. For more information see &quot;QNX Neutrino RTOS User's Guide&amp;quot;:http://www.qnx.com/download/feature.html?programid=9344 and &quot;Getting Started with QNX Neutrino&amp;quot;:http://www.qnx.com/download/feature.html?programid=19516.
<br />Qt on QNX, Qt on BlackBerry 10 and Qt on PlayBook OS share the same code base which is a part of every upstream Qt release since Qt 4.8. Even if slightly hidden in the shadow of mobile buzz, Qt on top of QNX is used by a growing number of QNX projects in many industries. Qt Creator supports working with QNX Neutrino devices as well, see [[Setting-up-Qt-Creator-for-QNX]] for more details.
<br />h2. Qt on BlackBerry 10
<br />The &quot;BlackBerry 10 operating system&amp;quot;:http://global.blackberry.com/blackberry-10.html powers the new generation of BlackBerry mobile products starting with the &quot;Z10&amp;quot;:http://blackberry.com/blackberryz10 and the &quot;Q10&amp;quot;:http://blackberry.com/blackberryq10 announced at the launch in February 2013. Two more devices are available on the market today: &quot;Q5&amp;quot;:http://www.blackberry.com/BlackBerryQ5 and &quot;Z30&amp;quot;:http://blackberry.com/blackberryz30.
<br />A recent version of Qt 4.8 is integrated in the BlackBerry 10 firmware and NDK. Moreover, Qt is used as the base of the Cascades application framework and so by many pre-integrated BlackBerry 10 applications.<br />It's also possible to develop and deploy applications using Qt5 on BlackBerry 10. You just need to include Qt5 libraries in the application package.


The [http://global.blackberry.com/blackberry-10.html BlackBerry 10 operating system] ''[global.blackberry.com]'' powers the new generation of BlackBerry mobile products starting with the [http://blackberry.com/blackberryz10 Z10] ''[blackberry.com]'' and the [http://blackberry.com/blackberryq10 Q10] ''[blackberry.com]'' announced at the launch in February 2013. Two more devices are available on the market today: [http://www.blackberry.com/BlackBerryQ5 Q5] ''[blackberry.com]'' and [http://blackberry.com/blackberryz30 Z30] ''[blackberry.com]''.
<br />h3. Development with Qt for BlackBerry 10
<br />Development of Qt applications for the BlackBerry10 platform is possible using the [&quot;BlackBerry Native Development Kit (NDK)&quot;:https://developer.blackberry.com/native/].<br />First versions of NDK contained both, the Momentics IDE as well as the NDK itself. In recent releases, developers first [&quot;download&amp;quot;:https://developer.blackberry.com/native/downloads/] the Momentics IDE which then installs the NDK and simulator packages. Every NDK package includes a version of Qt4.8, a cross compiler toolchain, plus packaging and deployment tools. Basically all you need for development. It certainly includes tons of other API and libraries to discover.<br />After setup you can opt for development with the Momentics IDE or with [[Qt-Creator-with-BlackBerry-10|Qt Creator]].
<br />See complete article [[Setup for BlackBerry10 development]]
<br />h3. Qt5 on BlackBerry 10
<br />Qt5 is not integrated into the device firmware yet, but it is possible to leverage its full potential already today on all BlackBerry10 devices. You can package the Qt5 run-time (libraries, plugins and QML modules) along with your application and submit for sale in &quot;BlackBerry World&amp;quot;:http://appworld.blackberry.com.
<br />See complete article [[Qt5 on Blackberry10]]
<br />h3. Qt and the Cascades application framework
<br />The Cascades UI framework uses Qt C''+ and QML as a base to provide a standard set of UI controls and other APIs tailored to the BlackBerry 10 platform. You can develop your application in C++ or QML. If you are curious, take a look at the &quot;Introduction to Cascades&amp;quot;:http://developer.blackberry.com/native/documentation/cascades/getting_started/intro/index.html article.


A recent version of Qt 4.8 is integrated in the BlackBerry 10 firmware and <span class="caps">NDK</span>. Moreover, Qt is used as the base of the Cascades application framework and so by many pre-integrated BlackBerry 10 applications.<br /> It’s also possible to develop and deploy applications using Qt5 on BlackBerry 10. You just need to include Qt5 libraries in the application package.
== Qt on the PlayBook OS ==


===Development with Qt for BlackBerry 10===
The PlayBook tablet products have reached their end of life. PlayBook OS does not include Qt. An earlier version of Qt is integrated in &quot;the PlayBook NDK (Native Development Kit)&quot;:https://developer.blackberry.com/playbook/native/. The overall process, including the steps for setup, development, testing and deployment for the PlayBook OS and for the Blackberry10 platform is similar, but there are a few differences, see the [[Qt-on-PlaybookOS | Qt on Playbook OS]] article for more details..


Development of Qt applications for the BlackBerry10 platform is possible using the [https://developer.blackberry.com/native/ BlackBerry Native Development Kit] ''[developer.blackberry.com]''.<br /> First versions of <span class="caps">NDK</span> contained both, the Momentics <span class="caps">IDE</span> as well as the <span class="caps">NDK</span> itself. In recent releases, developers first [https://developer.blackberry.com/native/downloads/ download] ''[developer.blackberry.com]'' the Momentics <span class="caps">IDE</span> which then installs the <span class="caps">NDK</span> and simulator packages. Every <span class="caps">NDK</span> package includes a version of Qt4.8, a cross compiler toolchain, plus packaging and deployment tools. Basically all you need for development. It certainly includes tons of other <span class="caps">API</span> and libraries to discover.<br /> After setup you can opt for development with the Momentics <span class="caps">IDE</span> or with [[Qt-Creator-with-BlackBerry-10|Qt Creator]].
== Contacting Other Developers ==


See complete article [[Setup-for-BlackBerry10-development|Setup for BlackBerry10 development]]
Consider joining the &quot;Qt BlackBerry and QNX&amp;quot;:http://qt.io/groups/qt-BlackBerry-and-qnx group. This group has its own forum.


===Qt5 on BlackBerry 10===
== Getting Help ==


Qt5 is not integrated into the device firmware yet, but it is possible to leverage its full potential already today on all BlackBerry10 devices. You can package the Qt5 run-time (libraries, plugins and <span class="caps">QML</span> modules) along with your application and submit for sale in [http://appworld.blackberry.com BlackBerry World] ''[appworld.blackberry.com]''.
If you have any questions about Qt on BlackBerry, you can get help here:<br />* #qt-qnx IRC channel on http://freenode.net/<br />* BlackBerry Community Forums:<br />'''''' &quot;Native Development&amp;quot;:http://supportforums.BlackBerry.com/t5/Native-Development/bd-p/native_sdk<br />'''''' &quot;Cascades Development&amp;quot;:http://supportforums.BlackBerry.com/t5/Cascades-Development/bd-p/Cascades


See complete article [[Qt5-on-BlackBerry10|Qt5 on BlackBerry10]]
== Resources and references ==


===Qt and the Cascades application framework===
=== Tooling ===


The Cascades UI framework uses Qt C++ and <span class="caps">QML</span> as a base to provide a standard set of UI controls and other <span class="caps">API</span>s tailored to the BlackBerry 10 platform. You can develop your application in C++ or <span class="caps">QML</span>. If you are curious, take a look at the [http://developer.blackberry.com/native/documentation/cascades/getting_started/intro/index.html Introduction to Cascades] ''[developer.blackberry.com]'' article.
* [[Qt-Creator-with-BlackBerry-10] | Using Qt Creator for Qt Development on BlackBerry 10]]
* [[Custom_Qt_on_BlackBerry_devices] | Using custom Qt builds on BlackBerry 10 devices]]
* [[Remote_debugging_on_BlackBerry_devices | Remote (on-device) debugging with BlackBerry 10 devices]]
* [[Building-Qt4-for-BlackBerry | Building Qt4 for BlackBerry devices (please note that Qt4 is pre-installed on BlackBerry 10 devices, this article is more relevant for PlayBook devices)]]
* [[Building-Qt5-for-BlackBerry | Building Qt5 for BlackBerry devices]]


==Qt on the PlayBook OS==
=== Tips and Hints ===


The PlayBook tablet products have reached their end of life. PlayBook OS does not include Qt. An earlier version of Qt is integrated in [https://developer.blackberry.com/playbook/native/ the PlayBook <span class="caps">NDK</span>] ''[developer.blackberry.com]''. The overall process, including the steps for setup, development, testing and deployment for the PlayBook OS and for the Blackberry10 platform is similar, but there are a few differences, see the [[Qt-on-PlaybookOS|Qt on Playbook OS]] article for more details..
* &quot;UI guidelines for BlackBerry 10&amp;quot;:https://developer.blackberry.com/design/bb10/
* [[BPS_Events_and_Qt]|BPS event integration in to Qt event loop, a how-to]]
* [[BlackBerry_Hints_n_Tips | Various hints and tips for application development on BlackBerry 10]]


==Contacting Other Developers==
=== Related BlackBerry Jam Talks ===


Consider joining the [http://qt.io/groups/qt-BlackBerry-and-qnx Qt BlackBerry and <span class="caps">QNX</span>] ''[qt.io]'' group. This group has its own forum.
* &quot;Introduction to the BlackBerry 10 NDK - Developing a Native BlackBerry 10 App from Start to Finish&amp;quot;:http://hosting.desire2learncapture.com/RIM/1/watch/30.aspx
* &quot;Introduction to Qt on BB10&amp;quot;:http://hosting.desire2learncapture.com/RIM/1/watch/69.aspx
* &quot;Performance and Debugging for Native Developers&amp;quot;:http://hosting.desire2learncapture.com/RIM/1/watch/25.aspx
* &quot;Fundamentals of the Cascades UI Framework&amp;quot;:http://hosting.desire2learncapture.com/RIM/1/watch/27.aspx ''broken for swoz<code>ubuntu''


==Getting Help==
=== Related Community Projects ===


If you have any questions about Qt on BlackBerry, you can get help here:
* &quot;KDE BlackBerry Project&amp;quot;:http://community.kde.org/KDE_Mobile/BlackBerry
 
* <nowiki>#qt-qnx </nowiki><span class="caps">IRC</span> channel on http://freenode.net/
* BlackBerry Community Forums:
** [http://supportforums.BlackBerry.com/t5/Native-Development/bd-p/native_sdk Native Development] ''[supportforums.BlackBerry.com]''
** [http://supportforums.BlackBerry.com/t5/Cascades-Development/bd-p/Cascades Cascades Development] ''[supportforums.BlackBerry.com]''
 
==Resources and references==
 
===Tooling===
 
* [[Qt-Creator-with-BlackBerry-10|Using Qt Creator for Qt Development on BlackBerry 10]]
* [[Custom Qt on BlackBerry devices|Using custom Qt builds on BlackBerry 10 devices]]
* [[Remote debugging on Blackberry devices|Remote (on device) debugging with BlackBerry 10 devices]]
* [[Building-Qt4-for-Blackberry|Building Qt4 for BlackBerry devices (please note that Qt4 is pre installed on BlackBerry 10 devices, this article is more relevant for PlayBook devices)]]
* [[Building-Qt5-for-Blackberry|Building Qt5 for BlackBerry devices]]
 
===Tips and Hints===
 
* [https://developer.blackberry.com/design/bb10/ UI guidelines for BlackBerry 10] ''[developer.blackberry.com]''
* [[BPS Events and Qt|<span class="caps">BPS</span> event integration in to Qt event loop, a how to]]
* [[BlackBerry Hints n Tips|Various hints and tips for application development on BlackBerry 10]]
 
===Related BlackBerry Jam Talks===
 
* [http://hosting.desire2learncapture.com/RIM/1/watch/30.aspx Introduction to the BlackBerry 10 <span class="caps">NDK</span> – Developing a Native BlackBerry 10 App from Start to Finish] ''[hosting.desire2learncapture.com]''
* [http://hosting.desire2learncapture.com/RIM/1/watch/69.aspx Introduction to Qt on BB10] ''[hosting.desire2learncapture.com]''
* [http://hosting.desire2learncapture.com/RIM/1/watch/25.aspx Performance and Debugging for Native Developers] ''[hosting.desire2learncapture.com]''
* [http://hosting.desire2learncapture.com/RIM/1/watch/27.aspx Fundamentals of the Cascades UI Framework] ''[hosting.desire2learncapture.com]'' ''broken for swoz@ubuntu''
 
===Related Community Projects===
 
* [http://community.kde.org/KDE_Mobile/BlackBerry <span class="caps">KDE</span> BlackBerry Project] ''[community.kde.org]''
 
===Categories:===
 
* [[:Category:BlackBerry|BlackBerry]]

Revision as of 14:41, 23 February 2015


[toc align_right="yes&quot; depth="2&quot;]

Qt for BlackBerry

Introduction

Qt can be used for application development for the recent BlackBerry platform. This includes phones running the BlackBerry 10 operating system as well as the PlayBook.
This page is thought to serve as a starting point for all those who are interested in developing with Qt on BlackBerry 10 and PlayBook OS.

QNX as a base OS for BlackBerry 10 and PlayBook OS

Compared to older BlackBerry products running BlackBerry OS based on Java, BlackBerry 10 and PlayBook OS use "QNX&quot;:http://en.wikipedia.org/wiki/QNX as their base OS and support native development in C and C+. A large number of additional system and platform specific APIs and services are provided on top of the standard QNX package. For more information see "QNX Neutrino RTOS User's Guide&quot;:http://www.qnx.com/download/feature.html?programid=9344 and "Getting Started with QNX Neutrino&quot;:http://www.qnx.com/download/feature.html?programid=19516.
Qt on QNX, Qt on BlackBerry 10 and Qt on PlayBook OS share the same code base which is a part of every upstream Qt release since Qt 4.8. Even if slightly hidden in the shadow of mobile buzz, Qt on top of QNX is used by a growing number of QNX projects in many industries. Qt Creator supports working with QNX Neutrino devices as well, see Setting-up-Qt-Creator-for-QNX for more details.
h2. Qt on BlackBerry 10
The "BlackBerry 10 operating system&quot;:http://global.blackberry.com/blackberry-10.html powers the new generation of BlackBerry mobile products starting with the "Z10&quot;:http://blackberry.com/blackberryz10 and the "Q10&quot;:http://blackberry.com/blackberryq10 announced at the launch in February 2013. Two more devices are available on the market today: "Q5&quot;:http://www.blackberry.com/BlackBerryQ5 and "Z30&quot;:http://blackberry.com/blackberryz30.
A recent version of Qt 4.8 is integrated in the BlackBerry 10 firmware and NDK. Moreover, Qt is used as the base of the Cascades application framework and so by many pre-integrated BlackBerry 10 applications.
It's also possible to develop and deploy applications using Qt5 on BlackBerry 10. You just need to include Qt5 libraries in the application package.


h3. Development with Qt for BlackBerry 10
Development of Qt applications for the BlackBerry10 platform is possible using the ["BlackBerry Native Development Kit (NDK)":https://developer.blackberry.com/native/].
First versions of NDK contained both, the Momentics IDE as well as the NDK itself. In recent releases, developers first ["download&quot;:https://developer.blackberry.com/native/downloads/] the Momentics IDE which then installs the NDK and simulator packages. Every NDK package includes a version of Qt4.8, a cross compiler toolchain, plus packaging and deployment tools. Basically all you need for development. It certainly includes tons of other API and libraries to discover.
After setup you can opt for development with the Momentics IDE or with Qt Creator.
See complete article Setup for BlackBerry10 development
h3. Qt5 on BlackBerry 10
Qt5 is not integrated into the device firmware yet, but it is possible to leverage its full potential already today on all BlackBerry10 devices. You can package the Qt5 run-time (libraries, plugins and QML modules) along with your application and submit for sale in "BlackBerry World&quot;:http://appworld.blackberry.com.
See complete article Qt5 on Blackberry10
h3. Qt and the Cascades application framework
The Cascades UI framework uses Qt C+ and QML as a base to provide a standard set of UI controls and other APIs tailored to the BlackBerry 10 platform. You can develop your application in C++ or QML. If you are curious, take a look at the "Introduction to Cascades&quot;:http://developer.blackberry.com/native/documentation/cascades/getting_started/intro/index.html article.

Qt on the PlayBook OS

The PlayBook tablet products have reached their end of life. PlayBook OS does not include Qt. An earlier version of Qt is integrated in "the PlayBook NDK (Native Development Kit)":https://developer.blackberry.com/playbook/native/. The overall process, including the steps for setup, development, testing and deployment for the PlayBook OS and for the Blackberry10 platform is similar, but there are a few differences, see the Qt on Playbook OS article for more details..

Contacting Other Developers

Consider joining the "Qt BlackBerry and QNX&quot;:http://qt.io/groups/qt-BlackBerry-and-qnx group. This group has its own forum.

Getting Help

If you have any questions about Qt on BlackBerry, you can get help here:
* #qt-qnx IRC channel on http://freenode.net/
* BlackBerry Community Forums:
' "Native Development&quot;:http://supportforums.BlackBerry.com/t5/Native-Development/bd-p/native_sdk
'
"Cascades Development&quot;:http://supportforums.BlackBerry.com/t5/Cascades-Development/bd-p/Cascades

Resources and references

Tooling

Tips and Hints

Related BlackBerry Jam Talks

Related Community Projects