forked from qt-creator/qt-creator
Doc: deploy configurations
Publishing to Ovi Store Reviewed-by: Tobias Hunger Reviewed-by: Pawel Polanski
This commit is contained in:
BIN
doc/images/qtcreator-project-options-deploy.png
Normal file
BIN
doc/images/qtcreator-project-options-deploy.png
Normal file
Binary file not shown.
|
After Width: | Height: | Size: 20 KiB |
Binary file not shown.
|
Before Width: | Height: | Size: 10 KiB After Width: | Height: | Size: 10 KiB |
BIN
doc/images/qtcreator-remove-deploy-step.png
Normal file
BIN
doc/images/qtcreator-remove-deploy-step.png
Normal file
Binary file not shown.
|
After Width: | Height: | Size: 6.2 KiB |
@@ -3400,7 +3400,7 @@
|
|||||||
|
|
||||||
Qt Creator automatically detects Symbian devices that are connected to
|
Qt Creator automatically detects Symbian devices that are connected to
|
||||||
the development PC with an USB cable.
|
the development PC with an USB cable.
|
||||||
If only one device is detected, the application is deployed
|
If only one device is detected, the application is deployed to it
|
||||||
and run on it. If multiple devices are connected to the PC,
|
and run on it. If multiple devices are connected to the PC,
|
||||||
make sure that the correct device is selected in the
|
make sure that the correct device is selected in the
|
||||||
\gui {Symbian Device} run settings for your project.
|
\gui {Symbian Device} run settings for your project.
|
||||||
@@ -3411,137 +3411,12 @@
|
|||||||
|
|
||||||
\image qtcreator-symbian-run-settings.png "Run settings for Symbian devices"
|
\image qtcreator-symbian-run-settings.png "Run settings for Symbian devices"
|
||||||
|
|
||||||
\section3 Creating SIS Installation Packages
|
When you deploy the application for the \gui{Symbian Device} target, Qt
|
||||||
|
Creator generates a Symbian installation system (SIS) file in the project folder.
|
||||||
When you run the application for the \gui{Symbian Device} target, Qt
|
When you are ready to publish the application on Ovi Store or some other
|
||||||
Creator automatically generates a Symbian installation system (SIS) file
|
channel, you must make sure that the SIS file meets the requirements for
|
||||||
in the project folder. You can deliver the installation file to users for
|
publishing and installing applications on Symbian devices. For more information,
|
||||||
installation on Symbian devices.
|
see \l{Deploying Applications to Symbian Devices}.
|
||||||
|
|
||||||
The name of the installation file is displayed in the \gui {Installation file}
|
|
||||||
field. In the \gui {Installation drive} field, select the drive on the device
|
|
||||||
to install the application to. To suppress notifications on the device during the
|
|
||||||
installation, select the \gui {Silent installation} check box. If the silent
|
|
||||||
installation fails, Qt Creator attempts installation again, this time displaying
|
|
||||||
notifications and error messages.
|
|
||||||
|
|
||||||
Only installation files signed with a certificate and private key are
|
|
||||||
allowed to be installed onto Symbian devices. By default, Qt Creator
|
|
||||||
self-signs the installation file. This self-signing allows you to install
|
|
||||||
the application on a mobile device but places limits on what you can do
|
|
||||||
with the installation file, including:
|
|
||||||
\list
|
|
||||||
\o Self-signed applications cannot access the more sensitive
|
|
||||||
\l{Capabilities and Signing}{capabilities} of the mobile device.
|
|
||||||
\o Security warnings will be displayed when you install the self-signed
|
|
||||||
application on a mobile device.
|
|
||||||
\o Self-signed applications cannot be distributed commercially on Ovi
|
|
||||||
Store.
|
|
||||||
\endlist
|
|
||||||
|
|
||||||
To get around these limitations, you need to go through the Symbian Signed
|
|
||||||
process. The Symbian Signed organisation manages a public key
|
|
||||||
infrastructure to provide public authentication of the information in the
|
|
||||||
application signing certificates. Their security partner can validate your
|
|
||||||
certificate and give you a Publisher ID. Then, when you sign an
|
|
||||||
application, other people can be confident that the information in your
|
|
||||||
certificate is correct and that the application does actually come from you.
|
|
||||||
|
|
||||||
There are also options that do not require you to get a Publisher ID. For
|
|
||||||
more detail about how the Symbian Signed process works, see
|
|
||||||
\l{http://developer.symbian.org/wiki/index.php/Complete_Guide_To_Symbian_Signed}
|
|
||||||
{Complete Guide to Symbian Signed}.
|
|
||||||
|
|
||||||
When you have your own certificate and private key, you can specify them in
|
|
||||||
the \gui{Create SIS Package} step in the run settings.
|
|
||||||
|
|
||||||
\image qtcreator-qt4-symbian-signing.png
|
|
||||||
|
|
||||||
|
|
||||||
If your private key is protected by a passphrase, Qt Creator asks you for the
|
|
||||||
passphrase when the package is signed and offers to store it. However, storing
|
|
||||||
passphrases in Qt Creator presents a security risk. To make Qt Creator forget
|
|
||||||
all saved passphrases, click \gui {Reset Passphrases}.
|
|
||||||
|
|
||||||
\section3 Capabilities and Signing
|
|
||||||
|
|
||||||
Capabilities allow the Symbian platform to control access by applications to
|
|
||||||
the functionality provided by the platform APIs. Access to capabilities is
|
|
||||||
determined by the device configuration and how the application has been signed.
|
|
||||||
|
|
||||||
Symbian Signed offers the following signing options depending on the
|
|
||||||
capabilities that the application accesses:
|
|
||||||
|
|
||||||
\list
|
|
||||||
|
|
||||||
\o \bold{Express signed} for applications that access only user and system
|
|
||||||
capabilities.
|
|
||||||
|
|
||||||
\o \bold{Certified signed} for applications that access also restricted or
|
|
||||||
device manufacturer capabilities.
|
|
||||||
|
|
||||||
\note You need to request the rights to access device manufacturer
|
|
||||||
capabilities from the manufacturer.
|
|
||||||
|
|
||||||
\endlist
|
|
||||||
|
|
||||||
For more information about how to choose the appropriate signing option, see
|
|
||||||
\l{http://developer.symbian.org/wiki/index.php/Symbian_Signed_For_Distributing_Your_Application}{Symbian Signed For Distributing Your Application}.
|
|
||||||
|
|
||||||
If you select a signing option that does not allow the application to access
|
|
||||||
the defined capabilities, installing the application on mobile devices
|
|
||||||
fails. To avoid problems, only define capabilities and link libraries to a project
|
|
||||||
if you really need them.
|
|
||||||
|
|
||||||
For more information about capabilities and how you can check which ones you
|
|
||||||
need, see
|
|
||||||
\l{http://developer.symbian.org/wiki/index.php/Capabilities_(Symbian_Signed)}{Capabilities (Symbian Signed)}
|
|
||||||
and
|
|
||||||
\l{http://doc.qt.nokia.com/4.7/platform-notes-symbian.html#required-capabilities}{Required Capabilities for Qt Applications}.
|
|
||||||
|
|
||||||
For more information on how to define capabilities for a project, see
|
|
||||||
\l{http://doc.qt.nokia.com/4.7/qmake-platform-notes.html#capabilities}{Capabilities}.
|
|
||||||
|
|
||||||
\section3 Creating Smart Installer for Symbian Packages
|
|
||||||
|
|
||||||
To deploy Qt applications on Symbian devices, you must install the software that Qt applications
|
|
||||||
require, typically Qt, QtWebkit, and Open C. Nokia Smart Installer for Symbian makes it easier
|
|
||||||
for users to install Qt applications to Symbian phones by checking whether the device contains
|
|
||||||
the necessary software and by installing the missing pieces.
|
|
||||||
|
|
||||||
For this to work, the Nokia Smart Installer must be packaged with the Qt application. The
|
|
||||||
application SIS file must first be Symbian Signed. The capabilities used in the applications
|
|
||||||
determine, which signing option must be selected. The wrapper package must be signed using
|
|
||||||
either the same option or a more extensive option than the application SIS.
|
|
||||||
|
|
||||||
To package Nokia Smart Installer with the application, select the \gui {Create Smart Installer
|
|
||||||
package} check box. This ensures that up-to-date and appropriate versions of Qt and its
|
|
||||||
dependencies are installed on devices. Further, it reduces the file size of the application you
|
|
||||||
publish, because you do not have to deliver the required applications.
|
|
||||||
|
|
||||||
For more information about the Nokia Smart Installer, see the \e {Nokia Smart Installer for
|
|
||||||
Symbian Manual}.
|
|
||||||
|
|
||||||
Note: Nokia Smart Installer for Symbian is only available on Windows.
|
|
||||||
|
|
||||||
\section3 Application UID
|
|
||||||
|
|
||||||
A UID is a globally unique identifier that is used to
|
|
||||||
uniquely identify, for example, an object or file type. In Symbian development,
|
|
||||||
objects are identified by compound identifiers that are constructed from three
|
|
||||||
UIDs, namely UID1, UID2, and UID3. UID1 and UID2 specify the category of an
|
|
||||||
object, whereas UID3 identifies a particular object, such as an application.
|
|
||||||
|
|
||||||
When you create a \gui {Mobile Qt Application}, Qt Creator adds a UID3 suitable for
|
|
||||||
development and debugging automatically to the application .pro file. However, to
|
|
||||||
distribute your application and get it Symbian signed, you must apply for a UID
|
|
||||||
from Symbian Signed, which manages the allocation of UIDs. You can request UIDs either one
|
|
||||||
at a time or as preallocated blocks on the \l{https://www.symbiansigned.com/app/page}{Symbian Signed}
|
|
||||||
web site.
|
|
||||||
|
|
||||||
Replace the testing UID with the distribution UID in the .pro file before you
|
|
||||||
build the final installation package. For more information, see
|
|
||||||
\l{http://doc.qt.nokia.com/4.7/qmake-platform-notes.html#unique-identifiers}{Unique Identifiers}.
|
|
||||||
|
|
||||||
\section2 Specifying Run Settings for Maemo Devices
|
\section2 Specifying Run Settings for Maemo Devices
|
||||||
|
|
||||||
@@ -3551,52 +3426,18 @@
|
|||||||
|
|
||||||
\image qtcreator-screenshot-run-settings.png "Run settings for Maemo devices"
|
\image qtcreator-screenshot-run-settings.png "Run settings for Maemo devices"
|
||||||
|
|
||||||
\section3 Deploying Applications to Maemo Devices
|
|
||||||
|
|
||||||
You can specify settings for deploying applications to Maemo devices in the
|
|
||||||
project .pro file. You can view the settings in the \gui {Run Settings}.
|
|
||||||
|
|
||||||
The files to be installed are listed in the
|
|
||||||
\gui {Deploy to Device} step, the \gui {Files to install} field. The
|
|
||||||
\gui {Local File Path} field displays the location of the file on the development
|
|
||||||
PC. The \gui {Remote Directory} field displays the folder where the file is installed on
|
|
||||||
the device.
|
|
||||||
|
|
||||||
\image qtcreator-maemo-deployment.png "Deploy to device"
|
|
||||||
|
|
||||||
If you develop your own libraries, Qt Creator needs to be able to access them
|
|
||||||
during compilation. When you install MADDE, an instance of the device file
|
|
||||||
system, called sysroot, is installed to the development PC. Libraries are copied to
|
|
||||||
sysroot if the \gui {Also deploy to sysroot} check box is selected.
|
|
||||||
|
|
||||||
\section3 Creating Debian Installation Packages
|
|
||||||
|
|
||||||
When you run the application on the \gui{Maemo} target, Qt Creator generates
|
When you run the application on the \gui{Maemo} target, Qt Creator generates
|
||||||
a debian installation package in the build directory by default. You can deliver
|
a debian installation package in the build directory by default. You can deliver
|
||||||
the installation package to users for installation on Maemo devices that are of
|
the installation package to users for installation on Maemo devices that are of
|
||||||
the same type and run the same firmware as the connected device.
|
the same type and run the same firmware as the connected device. For more
|
||||||
|
information, see \l{Deploying Applications to Maemo Devices}.
|
||||||
\image qtcreator-maemo-deb-package.png "Create installation package"
|
|
||||||
|
|
||||||
The name of the installation package is displayed in the \gui {Create Package}
|
|
||||||
field in the \gui {Run Settings}. You can change the version number in the \gui {Version number} field.
|
|
||||||
|
|
||||||
Qt Creator provides templates for a set of files that must be included
|
|
||||||
in debian packages. To edit the files, select a file in \gui {Adapt debian
|
|
||||||
file} and click \gui Edit. The file opens in the text editor.
|
|
||||||
|
|
||||||
The debian control file contains an application icon in encoded form. To add the
|
|
||||||
application icon to the file, select it in the \gui {Package manager icon} field.
|
|
||||||
For more information about icon files and adding them manually, see
|
|
||||||
\l{ http://wiki.maemo.org/Packaging#Displaying_an_icon_in_the_Application_Manager_next_to_your_package}{Displaying an icon in the Application Manager next to your package}.
|
|
||||||
|
|
||||||
\note Qt Creator automates this process for you.
|
|
||||||
|
|
||||||
\section1 Specifying a Custom Executable to Run
|
\section1 Specifying a Custom Executable to Run
|
||||||
|
|
||||||
If you use cmake or the generic project type in Qt Creator, or want
|
If you use cmake or the generic project type in Qt Creator, or want
|
||||||
to run a custom desktop executable, create a \gui {Custom Executable}
|
to run a custom desktop executable, create a \gui {Custom Executable}
|
||||||
run configuration for your project.
|
run configuration for your project. For example, when working on a library,
|
||||||
|
you can run a test application that links against the library.
|
||||||
|
|
||||||
Specify the executable to run, command line arguments, working directory,
|
Specify the executable to run, command line arguments, working directory,
|
||||||
and environment variables to use.
|
and environment variables to use.
|
||||||
@@ -3637,9 +3478,503 @@
|
|||||||
|
|
||||||
\image qmldesigner-run-settings.png "Run settings for Qt Quick projects"
|
\image qmldesigner-run-settings.png "Run settings for Qt Quick projects"
|
||||||
|
|
||||||
|
|
||||||
*/
|
*/
|
||||||
|
|
||||||
|
|
||||||
|
/*!
|
||||||
|
\contentspage index.html
|
||||||
|
\previouspage creator-deployment-symbian.html
|
||||||
|
\page creator-deployment-maemo.html
|
||||||
|
\nextpage creator-publish-ovi.html
|
||||||
|
|
||||||
|
\title Deploying Applications to Maemo Devices
|
||||||
|
|
||||||
|
You can specify settings for deploying applications to Maemo devices in the
|
||||||
|
project .pro file. You can view the settings in the \gui {Run Settings}.
|
||||||
|
|
||||||
|
The files to be installed are listed in the
|
||||||
|
\gui {Deploy to Device} step, the \gui {Files to install} field. The
|
||||||
|
\gui {Local File Path} field displays the location of the file on the development
|
||||||
|
PC. The \gui {Remote Directory} field displays the folder where the file is installed on
|
||||||
|
the device.
|
||||||
|
|
||||||
|
\image qtcreator-maemo-deployment.png "Deploy to device"
|
||||||
|
|
||||||
|
If you develop your own libraries, Qt Creator needs to be able to access them
|
||||||
|
during compilation. When you install MADDE, an instance of the device file
|
||||||
|
system, called sysroot, is installed to the development PC. Libraries are copied to
|
||||||
|
sysroot if the \gui {Also deploy to sysroot} check box is selected.
|
||||||
|
|
||||||
|
\section1 Creating Debian Installation Packages
|
||||||
|
|
||||||
|
When you run the application on the \gui{Maemo} target, Qt Creator generates
|
||||||
|
a debian installation package in the build directory by default. You can deliver
|
||||||
|
the installation package to users for installation on Maemo devices that are of
|
||||||
|
the same type and run the same firmware as the connected device.
|
||||||
|
|
||||||
|
\image qtcreator-maemo-deb-package.png "Create installation package"
|
||||||
|
|
||||||
|
The name of the installation package is displayed in the \gui {Create Package}
|
||||||
|
field in the \gui {Run Settings}. You can change the version number in the \gui {Version number} field.
|
||||||
|
|
||||||
|
Qt Creator provides templates for a set of files that must be included
|
||||||
|
in debian packages. To edit the files, select a file in \gui {Adapt debian
|
||||||
|
file} and click \gui Edit. The file opens in the text editor.
|
||||||
|
|
||||||
|
The debian control file contains an application icon in encoded form. To add the
|
||||||
|
application icon to the file, select it in the \gui {Package manager icon} field.
|
||||||
|
For more information about icon files and adding them manually, see
|
||||||
|
\l{ http://wiki.maemo.org/Packaging#Displaying_an_icon_in_the_Application_Manager_next_to_your_package}{Displaying an icon in the Application Manager next to your package}.
|
||||||
|
|
||||||
|
\note Qt Creator automates this process for you.
|
||||||
|
|
||||||
|
*/
|
||||||
|
|
||||||
|
|
||||||
|
/*!
|
||||||
|
\contentspage index.html
|
||||||
|
\previouspage creator-maemo-emulator.html
|
||||||
|
\page creator-deployment.html
|
||||||
|
\nextpage creator-deployment-symbian.html
|
||||||
|
|
||||||
|
\title Deploying Applications to Mobile Devices
|
||||||
|
|
||||||
|
Deploy configurations in the \gui Project mode \gui {Run Settings} handle
|
||||||
|
the packaging of the application as an executable and copying it to a
|
||||||
|
location you want to run the executable at. The files can be copied to a location
|
||||||
|
in the file system of the development PC or a mobile device.
|
||||||
|
|
||||||
|
When you are ready to publish the application on Ovi Store or some other
|
||||||
|
channel, you must make sure that the installation file meets the requirements for
|
||||||
|
publishing and installing applications to Symbian or Maemo devices. The following
|
||||||
|
sections describe the steps that you have to take to create installation packages
|
||||||
|
for Symbian and Maemo devices and for publishing on Ovi Store:
|
||||||
|
|
||||||
|
\list
|
||||||
|
\o \l{Deploying Applications to Symbian Devices}
|
||||||
|
\o \l{Deploying Applications to Maemo Devices}
|
||||||
|
\o \l{Publishing Applications to Ovi Store}
|
||||||
|
\o \l{Building with Remote Compiler}
|
||||||
|
\endlist
|
||||||
|
|
||||||
|
*/
|
||||||
|
|
||||||
|
|
||||||
|
/*!
|
||||||
|
\contentspage index.html
|
||||||
|
\previouspage creator-deployment.html
|
||||||
|
\page creator-deployment-symbian.html
|
||||||
|
\nextpage creator-deployment-maemo.html
|
||||||
|
|
||||||
|
\title Deploying Applications to Symbian Devices
|
||||||
|
|
||||||
|
This section describes how to create installation packages that meet the
|
||||||
|
requirements for installing applications to Symbian devices.
|
||||||
|
|
||||||
|
\section1 Creating SIS Files
|
||||||
|
|
||||||
|
When you deploy the application for the \gui{Symbian Device} target, Qt
|
||||||
|
Creator automatically generates a Symbian installation system (SIS) file
|
||||||
|
in the project folder. You can deliver the installation file to users for
|
||||||
|
installation on Symbian devices.
|
||||||
|
|
||||||
|
The name of the installation file is displayed in the \gui {Installation file}
|
||||||
|
field in the \gui {Run Settings}. In the \gui {Installation drive} field, select the drive on the device
|
||||||
|
to install the application to. To suppress notifications on the device during the
|
||||||
|
installation, select the \gui {Silent installation} check box. If the silent
|
||||||
|
installation fails, Qt Creator attempts installation again, this time displaying
|
||||||
|
notifications and error messages.
|
||||||
|
|
||||||
|
To create a SIS package without copying it to the device (for example, to submit it
|
||||||
|
to Ovi Signed or Symbian Signed), create a deploy configuration that contains only the
|
||||||
|
\gui {Create SIS Package} step.
|
||||||
|
|
||||||
|
\image qtcreator-run-settings-create.png "Create SIS Package step"
|
||||||
|
|
||||||
|
|
||||||
|
\section1 Signing SIS Files
|
||||||
|
|
||||||
|
Only installation files signed with a certificate and private key are
|
||||||
|
allowed to be installed onto Symbian devices. By default, Qt Creator
|
||||||
|
self-signs the installation file. This self-signing allows you to install
|
||||||
|
the application on a mobile device but places limits on what you can do
|
||||||
|
with the installation file, including:
|
||||||
|
\list
|
||||||
|
\o Self-signed applications cannot access the more sensitive
|
||||||
|
\l{Capabilities and Signing}{capabilities} of the mobile device.
|
||||||
|
\o Security warnings will be displayed when you install the self-signed
|
||||||
|
application on a mobile device.
|
||||||
|
\o Self-signed applications cannot be published to Ovi
|
||||||
|
Store.
|
||||||
|
\endlist
|
||||||
|
|
||||||
|
To get around these limitations, you need to go through the Symbian Signed
|
||||||
|
or Ovi Signed process. The Symbian Signed organisation manages a public key
|
||||||
|
infrastructure to provide public authentication of the information in the
|
||||||
|
application signing certificates. Their security partner can validate your
|
||||||
|
certificate and give you a Publisher ID. Then, when you sign an
|
||||||
|
application, other people can be confident that the information in your
|
||||||
|
certificate is correct and that the application does actually come from you.
|
||||||
|
|
||||||
|
Ovi Signed is a variant of the Symbian Signed certification provided by Ovi
|
||||||
|
Publishing. It is limited to the Basic and System capability sets
|
||||||
|
(Express Signing). Participants can submit an unsigned SIS file to Ovi
|
||||||
|
Publishing for signing, quality assurance, packaging with Nokia Smart Installer
|
||||||
|
for Symbian, and publishing on Ovi Store. For more information about how
|
||||||
|
to participate and a list
|
||||||
|
of supported Nokia devices, see
|
||||||
|
\l{http://www.forum.nokia.com/Distribute/Packaging_and_signing.xhtml}{Packaging and Signing}.
|
||||||
|
|
||||||
|
There are also options that do not require you to get a Publisher ID. For
|
||||||
|
more detail about how the Symbian Signed process works, see
|
||||||
|
\l{https://www.symbiansigned.com}{Symbian Signed}.
|
||||||
|
|
||||||
|
When you have your own certificate and private key, you can specify them in
|
||||||
|
the \gui{Create SIS Package} step in the \gui {Run Settings}.
|
||||||
|
|
||||||
|
\image qtcreator-qt4-symbian-signing.png
|
||||||
|
|
||||||
|
|
||||||
|
If your private key is protected by a passphrase, Qt Creator asks you for the
|
||||||
|
passphrase when the package is signed and offers to store it. However, storing
|
||||||
|
passphrases in Qt Creator presents a security risk. To make Qt Creator forget
|
||||||
|
all saved passphrases, click \gui {Reset Passphrases}.
|
||||||
|
|
||||||
|
\section2 Capabilities and Signing
|
||||||
|
|
||||||
|
Capabilities allow the Symbian platform to control access by applications to
|
||||||
|
the functionality provided by the platform APIs. Access to capabilities is
|
||||||
|
determined by the device configuration and how the application has been signed.
|
||||||
|
|
||||||
|
Symbian Signed offers the following signing options depending on the
|
||||||
|
capabilities that the application accesses:
|
||||||
|
|
||||||
|
\list
|
||||||
|
|
||||||
|
\o \bold{Express signed} for applications that access only user and system
|
||||||
|
capabilities.
|
||||||
|
|
||||||
|
\o \bold{Certified signed} for applications that access also restricted or
|
||||||
|
device manufacturer capabilities.
|
||||||
|
|
||||||
|
\note You need to request the rights to access device manufacturer
|
||||||
|
capabilities from the manufacturer.
|
||||||
|
|
||||||
|
\endlist
|
||||||
|
|
||||||
|
For more information about how to choose the appropriate signing option and
|
||||||
|
how you can check which capabilities you need, see
|
||||||
|
\l{https://www.symbiansigned.com}{Symbian Signed}
|
||||||
|
and
|
||||||
|
\l{http://doc.qt.nokia.com/4.7/platform-notes-symbian.html#required-capabilities}{Required Capabilities for Qt Applications}.
|
||||||
|
|
||||||
|
For more information on how to define capabilities for a project, see
|
||||||
|
\l{http://doc.qt.nokia.com/4.7/qmake-platform-notes.html#capabilities}{Capabilities}.
|
||||||
|
|
||||||
|
\note If you select a signing option that does not allow the application to access
|
||||||
|
the defined capabilities, qmake disables the capabilities in the .pro file.
|
||||||
|
This allows you to run the application on devices, even though any functionality that
|
||||||
|
requires the capabilities is disabled.
|
||||||
|
|
||||||
|
\section1 Creating Smart Installer for Symbian Packages
|
||||||
|
|
||||||
|
To deploy Qt applications on Symbian devices, you must install the software that Qt applications
|
||||||
|
require, typically Qt, QtWebkit, and Open C. Nokia Smart Installer for Symbian makes it easier
|
||||||
|
for users to install Qt applications to Symbian phones by checking whether the device contains
|
||||||
|
the necessary software and by installing the missing pieces.
|
||||||
|
|
||||||
|
For this to work, the Nokia Smart Installer must be packaged with the Qt application. The
|
||||||
|
application SIS file must first be Symbian Signed or Ovi Signed. The capabilities used in the applications
|
||||||
|
determine, which signing option must be selected. The wrapper package must be signed using
|
||||||
|
either the same option or a more extensive option than the application SIS.
|
||||||
|
|
||||||
|
\note If you use Ovi Signed, you can just submit an unsigned SIS file to Ovi Publishing.
|
||||||
|
Ovi signs the file for you and packages it with Nokia Smart Installer for Symbian.
|
||||||
|
For more information, see \l{Publishing Applications to Ovi Store}.
|
||||||
|
|
||||||
|
To package Nokia Smart Installer with the application, select the \gui {Create Smart Installer
|
||||||
|
package} check box. This ensures that up-to-date and appropriate versions of Qt and its
|
||||||
|
dependencies are installed on devices. Further, it reduces the file size of the application you
|
||||||
|
publish, because you do not have to deliver the required libraries.
|
||||||
|
|
||||||
|
Nokia has reserved the following UIDs to be used with Nokia Smart Installer for Symbian:
|
||||||
|
|
||||||
|
\list
|
||||||
|
|
||||||
|
\o 0xA000D7CE for self-signed applications
|
||||||
|
\o 0x2002CCCF for Ovi Store or Symbian Signed packages
|
||||||
|
|
||||||
|
\endlist
|
||||||
|
|
||||||
|
\section2 Creating Self-signed Smart Installer Packages
|
||||||
|
|
||||||
|
To create a self-signed Nokia Smart Installer for Symbian wrapped .sis file,
|
||||||
|
you must use an UID from the unprotected UID range, provided by Symbian Signed
|
||||||
|
and the wrapper package UID value 0xA000D7CE. If you used the Qt Creator project
|
||||||
|
wizard to create the project, this wrapper package UID is used by default.
|
||||||
|
|
||||||
|
\list 1
|
||||||
|
|
||||||
|
\o Make sure that the source directory is clean. For example, if you use git,
|
||||||
|
enter the following command:
|
||||||
|
|
||||||
|
\c {git clean -dfx}
|
||||||
|
|
||||||
|
\o Click \gui Projects to edit the \gui {Build Settings} for the
|
||||||
|
\gui {Symbian Device} target.
|
||||||
|
|
||||||
|
\o Select the \gui Release configuration.
|
||||||
|
|
||||||
|
\o Open the \gui {Run Settings}.
|
||||||
|
|
||||||
|
\o In the \gui {Create SIS Package} step, select \gui {Self-signed certificate}.
|
||||||
|
|
||||||
|
\o To package Nokia Smart Installer for Symbian with the application, select
|
||||||
|
the \gui {Create Smart Installer package} check box.
|
||||||
|
|
||||||
|
\o Edit the project .pro file to use the correct UIDs for the application and
|
||||||
|
the wrapper package, as illustrated by the following code snippet:
|
||||||
|
|
||||||
|
\code
|
||||||
|
symbian {
|
||||||
|
TARGET.UID3 = 0xE4DE5D27
|
||||||
|
DEPLOYMENT.installer_header=0xA000D7CE
|
||||||
|
|
||||||
|
vendorinfo = \
|
||||||
|
"%{\"CustomVendor-EN\"}" \
|
||||||
|
":\"CustomVendor\""
|
||||||
|
|
||||||
|
my_deployment.pkg_prerules = vendorinfo
|
||||||
|
DEPLOYMENT += my_deployment
|
||||||
|
}
|
||||||
|
\endcode
|
||||||
|
|
||||||
|
\o Choose \gui {Build > Run Project}.
|
||||||
|
|
||||||
|
\endlist
|
||||||
|
|
||||||
|
Qt Creator automatically generates a wrapper package in the project folder.
|
||||||
|
|
||||||
|
\section2 Creating Symbian Signed Smart Installer Packages
|
||||||
|
|
||||||
|
If the application uses functions that require advanced capabilities (AllFiles,
|
||||||
|
DRM, TCB, CommDD, DiskAdmin, NetworkControl, MultimediaDD), you must use the
|
||||||
|
standard Symbian Signed process to have the application Symbian Signed. Depending
|
||||||
|
on the capabilities used, you may use either the Express Signed or the Certified
|
||||||
|
Signed path, or the manufacturer-specific channel (for AllFiles, DRM, and TCB).
|
||||||
|
|
||||||
|
\list 1
|
||||||
|
|
||||||
|
\o Make sure that the source directory is clean. For example, if you use git,
|
||||||
|
enter the following command:
|
||||||
|
|
||||||
|
\c {git clean -dfx}
|
||||||
|
|
||||||
|
\o Click \gui Projects to edit the \gui {Build Settings} for the
|
||||||
|
\gui {Symbian Device} target.
|
||||||
|
|
||||||
|
\o Select the \gui Release configuration.
|
||||||
|
|
||||||
|
\o Open the \gui {Run Settings}.
|
||||||
|
|
||||||
|
\o In the \gui {Create SIS Package} step, specify the developer certificate
|
||||||
|
and key in the \gui {Custom certificate} and \gui {Key file} fields.
|
||||||
|
|
||||||
|
\o Edit the project .pro file to use the correct UIDs and vendor information
|
||||||
|
for the application, as illustrated by the following code snippet:
|
||||||
|
|
||||||
|
\code
|
||||||
|
symbian {
|
||||||
|
TARGET.UID3 = 0x2000D7D1
|
||||||
|
DEPLOYMENT.installer_header=0x2002CCCF
|
||||||
|
|
||||||
|
vendorinfo = \
|
||||||
|
"%{\"CustomVendor-EN\"}" \
|
||||||
|
":\"CustomVendor\""
|
||||||
|
|
||||||
|
my_deployment.pkg_prerules = vendorinfo
|
||||||
|
DEPLOYMENT += my_deployment
|
||||||
|
}
|
||||||
|
\endcode
|
||||||
|
|
||||||
|
\o Choose \gui {Build > Run Project}.
|
||||||
|
|
||||||
|
\o Submit the created .sis file to Symbian Signed for certification.
|
||||||
|
|
||||||
|
\note Ensure that your application complies with the Symbian Signed
|
||||||
|
Test Criteria before submitting the file for certification. Also, if the file is
|
||||||
|
intended for Ovi Store publishing, verify that the application complies with Ovi
|
||||||
|
Store publishing requirements.
|
||||||
|
|
||||||
|
\o After receiving the .sis file from Symbian Signed, copy it over the old
|
||||||
|
application.sis.
|
||||||
|
|
||||||
|
\o To package Nokia Smart Installer for Symbian with the application, choose
|
||||||
|
\gui {Start > Nokia Qt SDK > Symbian > Qt for Symbian Command Prompt}
|
||||||
|
to open the Qt command line environment.
|
||||||
|
|
||||||
|
\o Change to the project directory. For example:
|
||||||
|
|
||||||
|
\c{cd C:\Sources\Application}
|
||||||
|
|
||||||
|
\o To create a Smart Installer wrapper package, enter the following
|
||||||
|
command:
|
||||||
|
|
||||||
|
\c {C:\Sources\Application> make ok_installer_sis QT_SIS_CERTIFICATE=publisherid.cer QT_SIS_KEY=publisherid.key}
|
||||||
|
|
||||||
|
\o Submit the created wrapped .sis file, application_installer.sis, to
|
||||||
|
Symbian Signed. Express Signed is a suitable signing option for the wrapper
|
||||||
|
package. The capabilities used in the application do not play a role here,
|
||||||
|
because the wrapper package is already signed.
|
||||||
|
|
||||||
|
\endlist
|
||||||
|
|
||||||
|
Qt Creator automatically generates a wrapper package in the project folder.
|
||||||
|
\note Ensure that your application complies with the requirements before submitting
|
||||||
|
the file to Ovi Store.
|
||||||
|
|
||||||
|
For more information about the qmake DEPLOYMENT variable, see
|
||||||
|
\l{http://doc.qt.nokia.com/4.7/qmake-variable-reference.html#deployment}{qmake Variable Reference}.
|
||||||
|
|
||||||
|
For more information about the Nokia Smart Installer, see the
|
||||||
|
\l{http://doc.qt.nokia.com/smart-installer-1.0/index.html}{Nokia Smart Installer for Symbian Manual}.
|
||||||
|
|
||||||
|
Note: Nokia Smart Installer for Symbian is only available on Windows.
|
||||||
|
|
||||||
|
\section1 Application UID
|
||||||
|
|
||||||
|
A UID is a globally unique identifier that is used to
|
||||||
|
uniquely identify, for example, an object or file type. In Symbian development,
|
||||||
|
objects are identified by compound identifiers that are constructed from three
|
||||||
|
UIDs, namely UID1, UID2, and UID3. UID1 and UID2 specify the category of an
|
||||||
|
object, whereas UID3 identifies a particular object, such as an application.
|
||||||
|
|
||||||
|
When you create a \gui {Mobile Qt Application}, Qt Creator adds a UID3 suitable for
|
||||||
|
development and debugging automatically to the application .pro file. However, to
|
||||||
|
distribute your application and get it Symbian Signed, you must apply for a UID
|
||||||
|
from Symbian Signed, which manages the allocation of UIDs. You can request UIDs either one
|
||||||
|
at a time or as preallocated blocks on the \l{https://www.symbiansigned.com/app/page}{Symbian Signed}
|
||||||
|
web site.
|
||||||
|
|
||||||
|
If you use the Ovi Signed process, Ovi Publisher Support allocates the UID for you.
|
||||||
|
|
||||||
|
Replace the testing UID with the distribution UID in the .pro file before you
|
||||||
|
build the final installation package. For more information, see
|
||||||
|
\l{http://doc.qt.nokia.com/4.7/qmake-platform-notes.html#unique-identifiers}{Unique Identifiers}.
|
||||||
|
|
||||||
|
*/
|
||||||
|
|
||||||
|
|
||||||
|
/*!
|
||||||
|
\contentspage index.html
|
||||||
|
\previouspage creator-deployment-maemo.html
|
||||||
|
\page creator-publish-ovi.html
|
||||||
|
\nextpage creator-remote-compiler.html
|
||||||
|
|
||||||
|
\title Publishing Applications to Ovi Store
|
||||||
|
|
||||||
|
To register as an Ovi Publisher, go to \l{https://publish.ovi.com/login}{Ovi Store}.
|
||||||
|
|
||||||
|
At the time of writing this document, Ovi Store accepts Qt
|
||||||
|
applications for the following Nokia device models:
|
||||||
|
|
||||||
|
\list
|
||||||
|
|
||||||
|
\o Symbian^3: N8-00, E7-00, C7-00, C6-01
|
||||||
|
|
||||||
|
\o Symbian^1 (S60 5th Edition): X6-00, N97, N97 mini, 5800 XpressMusic,
|
||||||
|
5530 XpressMusic, 5230 ExpressMusic, C6-00, 5228, 5235
|
||||||
|
|
||||||
|
\o S60 3rd Edition: E72, E71, E66, E63, E52
|
||||||
|
|
||||||
|
\o Maemo: Nokia N900, with PR1.3 and later
|
||||||
|
|
||||||
|
\endlist
|
||||||
|
|
||||||
|
For an up-to-date list, see
|
||||||
|
\l{http://www.forum.nokia.com/Distribute/Packaging_and_signing.xhtml}{Packaging and Signing}.
|
||||||
|
|
||||||
|
\section1 Publishing Qt Content for Symbian Devices
|
||||||
|
|
||||||
|
You can use the Ovi Signed process to get your application Express Signed for
|
||||||
|
free by Nokia. Make sure to use the \l{Application UID}{application UID} that you
|
||||||
|
receive from Ovi Publisher Support. Then create an unsigned SIS package and submit
|
||||||
|
it to Ovi Publishing for signing, quality assurance, packaging with Nokia Smart
|
||||||
|
Installer for Symbian, and publishing to Ovi Store.
|
||||||
|
|
||||||
|
For more information about how to use Ovi Signed, see
|
||||||
|
\l{http://www.forum.nokia.com/Distribute/Packaging_and_signing.xhtml}{Packaging and Signing}.
|
||||||
|
|
||||||
|
If the application uses functions that require advanced
|
||||||
|
\l{Capabilities and Signing}{capabilities}, you must
|
||||||
|
use the standard Symbian Signed process to have the application Symbian Signed
|
||||||
|
(using the Certified Signed path or the manufacturer-specific channel).
|
||||||
|
|
||||||
|
\note At the time of writing this document, the distribution of Qt 4.7.x based
|
||||||
|
applications is not supported by neither Ovi Store nor Smart Installer.
|
||||||
|
For up-to-date information about the packages available for distribution, see the
|
||||||
|
\l{http://wiki.forum.nokia.com/index.php/Nokia_Smart_Installer_for_Symbian}{Nokia Smart Installer for Symbian}
|
||||||
|
wiki.
|
||||||
|
|
||||||
|
To create a SIS package that you can submit to Ovi Publishing:
|
||||||
|
|
||||||
|
\list 1
|
||||||
|
|
||||||
|
\o Make sure that the source directory is clean. For example, if you use git,
|
||||||
|
enter the following command:
|
||||||
|
|
||||||
|
\c {git clean -dfx}
|
||||||
|
|
||||||
|
\o Click \gui Projects to edit the \gui {Build Settings} for the
|
||||||
|
\gui {Symbian Device} target.
|
||||||
|
|
||||||
|
\o Select the \gui Release configuration.
|
||||||
|
|
||||||
|
\o Open the \gui {Run Settings}.
|
||||||
|
|
||||||
|
\o In the \gui {Create SIS Package} step, select the \gui {Not signed} option.
|
||||||
|
|
||||||
|
\o In the \gui {Deploy SIS Package} step, click \gui {Remove Item} to
|
||||||
|
skip the step of copying the SIS file to a device. The SIS file is created
|
||||||
|
in the project folder.
|
||||||
|
|
||||||
|
\image qtcreator-remove-deploy-step.png "Removing deploy steps"
|
||||||
|
|
||||||
|
\o Check that the project .pro file uses the correct UID for the application and
|
||||||
|
the correct vendor information, as illustrated by the following code snippet:
|
||||||
|
|
||||||
|
\code
|
||||||
|
symbian {
|
||||||
|
TARGET.UID3 = 0x2000D7D1
|
||||||
|
|
||||||
|
vendorinfo = \
|
||||||
|
"%{\"CustomVendor-EN\"}" \
|
||||||
|
":\"CustomVendor\""
|
||||||
|
|
||||||
|
my_deployment.pkg_prerules = vendorinfo
|
||||||
|
DEPLOYMENT += my_deployment
|
||||||
|
}
|
||||||
|
\endcode
|
||||||
|
|
||||||
|
\note Ovi Store does not accept the application if the localized and non-localized
|
||||||
|
vendor information in the package file do not match the publisher name. That is,
|
||||||
|
it cannot be \e Nokia, \e Vendor, or \e Vendor-EN.
|
||||||
|
|
||||||
|
\o Choose \gui {Build > Run Project}.
|
||||||
|
|
||||||
|
\o Submit the SIS file to Ovi Publishing as a Qt Content item.
|
||||||
|
|
||||||
|
\endlist
|
||||||
|
|
||||||
|
\note After you change the application UID, you must use the developer
|
||||||
|
certificate-key pair that you receive from Ovi Publisher Support for testing
|
||||||
|
the application on devices. Self-signing cannot be
|
||||||
|
applied when UIDs from the trusted range 0x2xxxxxxx are used. For more
|
||||||
|
information, see \l{http://wiki.forum.nokia.com/index.php/UID}{UID}.
|
||||||
|
|
||||||
|
*/
|
||||||
|
|
||||||
/*!
|
/*!
|
||||||
\contentspage index.html
|
\contentspage index.html
|
||||||
\previouspage creator-run-settings.html
|
\previouspage creator-run-settings.html
|
||||||
@@ -3665,22 +4000,31 @@
|
|||||||
|
|
||||||
\title Specifying Dependencies
|
\title Specifying Dependencies
|
||||||
|
|
||||||
If you have multiple projects loaded in your session, you can define the
|
If you have multiple projects loaded in a session, you can define the
|
||||||
dependencies between them. Inter-project dependencies affect the build
|
order in which they are built. For example, if project A depends on project
|
||||||
order of your projects.
|
B, project B must be built first.
|
||||||
|
|
||||||
\note Inter-project dependencies are unrelated inside a qmake
|
\note The build order is stored as a property of a session, not a project.
|
||||||
project.
|
You must open the session for these settings to take effect. For more
|
||||||
|
information, see \l{Managing Sessions}.
|
||||||
|
|
||||||
\image qtcreator-build-dependencies.png "Dependencies view"
|
\image qtcreator-build-dependencies.png "Dependencies view"
|
||||||
|
|
||||||
To define the dependencies between projects:
|
To define the build order of projects within a session:
|
||||||
\list 1
|
\list 1
|
||||||
\o In \gui Projects, select a project.
|
\o In \gui Projects, select a project.
|
||||||
\o Click \gui Dependencies.
|
\o Click \gui Dependencies.
|
||||||
\o Select projects as dependencies.
|
\o Select projects that must be built before the current project is
|
||||||
|
built.
|
||||||
\endlist
|
\endlist
|
||||||
|
|
||||||
|
Qt Creator calculates the build order based on the dependencies that you
|
||||||
|
specify for the projects loaded in the session.
|
||||||
|
|
||||||
|
\note You cannot use this view to specify subprojects for projects.
|
||||||
|
For more information on how to add subprojects, see \l{Adding Subprojects
|
||||||
|
to Projects}.
|
||||||
|
|
||||||
*/
|
*/
|
||||||
|
|
||||||
|
|
||||||
@@ -4607,7 +4951,7 @@
|
|||||||
|
|
||||||
/*!
|
/*!
|
||||||
\contentspage index.html
|
\contentspage index.html
|
||||||
\previouspage creator-maemo-emulator.html
|
\previouspage creator-remote-compiler.html
|
||||||
\page creator-version-control.html
|
\page creator-version-control.html
|
||||||
\nextpage creator-task-lists.html
|
\nextpage creator-task-lists.html
|
||||||
|
|
||||||
@@ -6836,7 +7180,7 @@
|
|||||||
\endlist
|
\endlist
|
||||||
|
|
||||||
Qt Creator adds references to the QML files to a project and creates the additional files
|
Qt Creator adds references to the QML files to a project and creates the additional files
|
||||||
necessary for deploying applications on mobile devices.
|
necessary for deploying applications to mobile devices.
|
||||||
|
|
||||||
*/
|
*/
|
||||||
|
|
||||||
@@ -7370,9 +7714,9 @@
|
|||||||
|
|
||||||
/*!
|
/*!
|
||||||
\contentspage index.html
|
\contentspage index.html
|
||||||
\previouspage creator-debugging-helpers.html
|
\previouspage creator-debugging-qml.html
|
||||||
\page creator-maemo-emulator.html
|
\page creator-maemo-emulator.html
|
||||||
\nextpage creator-version-control.html
|
\nextpage creator-deployment.html
|
||||||
|
|
||||||
\title Using the Maemo Emulator
|
\title Using the Maemo Emulator
|
||||||
|
|
||||||
@@ -7688,9 +8032,6 @@
|
|||||||
battery power. Optimize power consumption to keep the total consumption at an acceptable
|
battery power. Optimize power consumption to keep the total consumption at an acceptable
|
||||||
level and to prevent users from running out of battery time.
|
level and to prevent users from running out of battery time.
|
||||||
|
|
||||||
For more information and code examples on how to minimize power consumption, see
|
|
||||||
\l{http://developer.symbian.org/wiki/index.php/Creating_Energy_Efficient_Apps_Using_Qt}{Creating Energy Efficient Apps Using Qt}.
|
|
||||||
|
|
||||||
\o Consider network issues
|
\o Consider network issues
|
||||||
|
|
||||||
If users do not have a flat-rate data plan or WLAN support, mobile
|
If users do not have a flat-rate data plan or WLAN support, mobile
|
||||||
|
|||||||
Reference in New Issue
Block a user