Viadeo Twitter Google Bookmarks ! Facebook Digg del.icio.us MySpace Yahoo MyWeb Blinklist Netvouz Reddit Simpy StumbleUpon Bookmarks Windows Live Favorites 
Logo Documentation Qt ·  Page d'accueil  ·  Toutes les classes  ·  Classes principales  ·  Annotées  ·  Classes groupées  ·  Modules  ·  Fonctions  · 

Platform and Compiler Notes - Symbian

As with any port, the maturity for Qt for Symbian has not yet reached the same level as other established Qt ports. This page documents the current notes for the Symbian port.

Source Compatibility

Qt for Symbian provides the same level of source compatibility guarantee as given for other platforms. That is, a program which compiles against a given version of Qt for Symbian will also compile against all future versions of the same major release.

Binary Compatibility

As with every supported platform, we will strive to maintain application behavior and binary compatibility throughout the lifetime of the Qt 4.x series. However, due to the fact that Symbian support is newly added in 4.6.0, there is a slight possibility that minor corrections to the application binary interface (ABI) might be required in 4.6.1, in order to ensure compatibility going forward. Any such change will be clearly documented in the release notes for 4.6.1.

Supported Devices

See the list of supported devices at http://wiki.forum.nokia.com/index.php/Nokia_Smart_Installer_for_Symbian#Supported_Devices

Supported Functionality

The following technologies and classes are not currently supported:

TechnologyNote
QtConcurrentPlanned for future release.
QtDBusNo current plans to support this feature.
Printing supportNo current plans to support this feature.

The following technologies have limited support:

TechnologyNote
QtSqlThe only driver supported is SQLite.
QtMultimediaAlthough the module itself is supported, no backend for Symbian is currently available. However, there is a backend available for Phonon.

Compiler Notes

GCCE (Symbian)

GCCE cannot be used to compile Qt libaries for the Symbian platform, but GCCE is supported when compiling Qt applications for the Symbian platform.

Known Issues

Known issues can be found by visiting the wiki page with an up-to-date list of known issues, and the list of bugs can be found by browsing the S60 component in Qt's public task tracker, located at http://bugreports.qt-project.org/.

For information about mixing exceptions with Symbian leaves, see Exception Safety with Symbian.

Required Capabilities

The Qt libraries are typically signed with All -TCB capabilites, but that does not mean your Qt application needs to be signed with the same capabilities to function properly. The capabilities your application needs to function properly depends on which parts of Qt you use, here is an overview:

ModuleRequired Symbian Capability
QtCorePowerMgmt if QProcess::kill(...) or QProcess::terminate(...) is called.
QtCoreAllFiles when accessing specific areas.
QtDeclarativeNetworkServices is automatically added for this module if no capabilities are explicitly specified.
QtNetworkNetworkServices is automatically added for this module if no capabilities are explicitly specified.
QtNetworkReadUserData is required to include all the phone's SSL certificates in the system's default CA certificate list (for example those added by the user or stored in the SIM card), without this capability only the CA certs built into the phone are used.
QtMultiMediaUserEnvironment if QAudioInput is used.
QtWebkitNetworkServices is automatically added for this module if no capabilities are explicitly specified.

Note: Some modules rely on other modules. E.g. QtWebkit and QtDeclarative depend on QtNetwork and therefore any application that depends on these modules is also likely to need NetworkServices capability.

For more information see the documentation of the individual Qt classes. If a class does not mention Symbian capabilities, it requires none.

Multimedia and Phonon Support

Qt provides a backend for Qt's Phonon module, which supports video and sound playback through Symbian's Multimedia Framework, MMF.

In this release the support is experimental. Video playback may have flickering issues, and support for effects and playback queueing is incomplete.

The audio and video formats that Phonon supports depends on what support the platform provides for MMF. The emulator is known to have limited codec support.

In addition, there exists a backend for the Helix framework. However, due to it not shipping with Qt, its availability depends on the Symbian platform in use. If available, it is loaded in preference over the MMF plugin. If the Helix plugin fails to load, the MMF plugin, if present on the device, will be loaded instead.

QtOpenGL Support

Qt 4.7 introduces the QtOpenGL module to Symbian^3. QtOpenGL is supported on devices which support OpenGL ES 2.0. Symbian platforms prior to Symbian^3 are not supported.

UI Performance in devices prior to Symbian^3

Qt uses the QPainter class to perform low-level painting on widgets and other paint devices. QPainter provides functions to draw complex shapes, aligned text and pixmaps. It can also do vector path clipping, coordinate transformations and Porter-Duff composition. If the underlying graphics architecture does not support all of these operations then Qt uses the raster graphics system for rendering.

Most of the Symbian devices prior to Symbian^3 use a non-ScreenPlay graphics architecture which does not have native support for all functions provided by QPainter. In non-ScreenPlay devices Qt uses the raster graphics system by default which has a performance penalty when compared to native Symbian rendering.

In order to be able to perform all functions provided by QPainter, the raster graphics system needs to have pixel level framebuffer access. To make this possible in non-ScreenPlay devices Qt has to create an additional offscreen buffer that is the target for all Qt rendering operations. Qt renders the widget tree to the offscreen buffer and the offscreen buffer is blitted to the framebuffer via Symbian Window Server.

The following table shows the rendering stacks of native Symbian and Qt in non-ScreenPlay devices.

SymbianQt

The following diagrams show a simplified sequence of drawing a pixmap in a non-ScreenPlay device.

Symbian

Qt

When compared to a native Symbian application, Qt does an additional blit to the offscreen buffer before drawing to the framebuffer. That is the performance penalty which needs to be paid to get all functionality provided by QPainter in non-ScreenPlay architecture.

Cette page est une traduction d'une page de la documentation de Qt, écrite par Nokia Corporation and/or its subsidiary(-ies). Les éventuels problèmes résultant d'une mauvaise traduction ne sont pas imputables à Nokia. Qt 5.0-snapshot
Copyright © 2012 Developpez LLC. Tous droits réservés Developpez LLC. Aucune reproduction, même partielle, ne peut être faite de ce site et de l'ensemble de son contenu : textes, documents et images sans l'autorisation expresse de Developpez LLC. Sinon, vous encourez selon la loi jusqu'à 3 ans de prison et jusqu'à 300 000 E de dommages et intérêts. Cette page est déposée à la SACD.
Vous avez déniché une erreur ? Un bug ? Une redirection cassée ? Ou tout autre problème, quel qu'il soit ? Ou bien vous désirez participer à ce projet de traduction ? N'hésitez pas à nous contacter ou par MP !
 
 
 
 
Partenaires

Hébergement Web