Almost all Qt platforms have some form of native service framework (e.g. COM on Windows , DBUS on Linux, Symbian S60 LIW/SAPI etc). However, cross platform development of services and clients is much more difficult. Each platform has different capabilities, APIs and limitations.
The aim of the Qt Service framework is to enable easy development of services and a unified way of accessing them. Qt services provider can interact with platform specific services without exposing the platform specifics to clients. This initial release focuses on in-process, aka plug-in based services. Clients can access shared or individual instances of the same service as long as the access happens from within the same process. Support for out-of-process services is planned for later on, as it requires improved signal/slot based IPC communication.
Each service is exposed via a QObject pointer which means that clients can interact with service objects via the Qt MetaObject system. In fact clients can introspect service objects and therefore access any function, signal, slot or property that has been registered via the meta object system without having to include service specific header files. This is particularly interesting for non-native environments, such as a Qt WebKit, which can embed arbitrary QObject instances into web pages and thus makes the service object accessible via JavaScript.
One of the exiting reasons why the Service Framework is part of the Mobility program is that we are hoping that it will be the common framework for future Nokia mobile platform releases. We expect that each Nokia mobile platform will use the same interface name space and in combination with other planned Mobility API’s, such as Bearer Management (also known as Connection management) or a Contacts API, it will enable true cross platform development.
Qt服务框架旨在简化跨平台服务开发并提供统一访问方式。通过QObject指针暴露服务,客户端可通过元对象系统与服务对象交互,无需包含特定头文件。此框架特别适用于非原生环境,如QtWebKit中JavaScript可以访问服务对象。



被折叠的 条评论
为什么被折叠?



