I have been trying to implement a mapviewer application in Qt as a desktop applicaation to work with multi-touch. I'd been having some trouble when I came across mention of Qt Mobility. Qt Mobility seems to be an old module that was used on mobile devices but doesn't appear to be supported by Nokia anymore. Although there is a active repository.
From what I can gather from various more recent forum posts such as this is if we want to use Qt Mobility's Location features we need to wait for it to be released in newer versions of Qt.
If the Qt Mobility api is still available through the repository is it possible to use this for desktop applications or is it strictly for mobile devices? I am interested in making use of the Qt Location classes to help create a map viewer client.
The QtMobility API while deprecated is still being updated and is still available and according to a thread on the Qt Developers it should work with Qt 4.8 (it was only officially supported up until Qt 4.7). According to the documentation it can be used for desktop applications, but they are mostly tier 2 platforms.
While Qt Location won't be ready until Qt 5.2 (expected at the end of November), I wouldn't expect it to drop support for platforms that are already supported in QtMobility.
Related
I’m working now on some project built on Qt 5.2.1. The project makes some basic rendering (using QPixmap, GraphicsScene, etc). The goal is to switch this mechanism to OpenGL as quickly as possible. In addition we plan to move the whole project to Qt 5.10.
Is there some benefit first moving to Qt 5.10 and only then switch to OpenGL over first switching to OpenGL and afterwards move to Qt 5.10?
Is there possibility of some unexpected difficulties if we first switch to OpenGL (on Qt 5.2.1) and only then upgrading to Qt 5.10 (some features got deprecated or some new nice-to-use features appear)?
My experience with OpenGL on Qt is it being full of both old and new bugs, poor integration capabilities, poor platform support (Intel=NOPE) and no error handling of Qt-internals (e.g. context creation). At least of you use the built-in OpenGL-widgets.
That said there is much development going on right now of the Qt-OpenGL support, judging from which Qt-version certain OpenGL related features I have found in he manual. If you must use Qt-OpenGL, I would assume you get most features and few(er) bugs jumping onto latest and greatest.
What is the difference between Qt for Symbian and Qt for MeeGo? I know Qt is a cross-compiling platform. Does this mean that if I use a library from Qt the exact same library works on all devices which support Qt (e.g. Symbian, MeeGo)?
For example:
QtDesktopServices can launch a web browser. Despite the name 'Desktop' is confusing for mobile devices can I launch a web browser on every device which supports Qt? If I look at MeeGo, MeeGo is used for different kind of devices e.g. In-Vehicle, TV, media phone
Is it guaranteed that every device has a web browser on it? I don't think so and that's why I'm asking. If a browser is guaranteed, which browser is it? Which features does it have? I know there is WRT, but a user here stated that WRT has discontinued. So what now?
Do I have to choose between Qt 4.7 and Qt Mobility 1.0?
What leinir said - Qt Mobility is a module that implements common features for mobile devices. Qt's API is the same on all platforms, though there are some platform-specific functions (mainly dealing with low-level stuff).
While the API (the interface) is the same, the implementation of course may be different. I suggest looking at the Qt online documentation - the pages linked under "Platform-specific Development"
According to "Platform notes - Symbian", the Symbian port is not complete and lacks some features (e.g. OpenGL support is "planned for a future release", while printing probably never will be supported). I'm pretty sure that the MeeGo/Maemo version supports OpenGL ES, as I've seen a Qt-based application using it (Stellarium on a Nokia N900).
QtMobility is an extra module for Qt, which provides a bunch of extra functionality which is more esoteric than the other 13 or so Qt modules, but functionality which is really useful when you are building applications the way you suggest.
So no, you don't choose between Qt 4.7 and QtMobility 1.0, because you have to use Qt to be able to use the extra module QtMobility :)
The browser will always be whatever is set up as the default browser on the system. So, no, there is no guarantees - for Windows, for example, you might have people using Firefox, Chrome, Internet Explorer 6 and many others. This is the nature of platform integration, i'm afraid :)
I have to develop an application which requires Bluetooth and profile change functionality for Symbian phones. After spending sometime I found that following options:
Java: but java does not allow to change profile
Symbian C++: I read basics for Symbian C++ and created some basic stuffs. Symbian extended APIs provide simple APIs for Profile and Bluetooth (I haven't tested yet). But its required lot of efforts to grab these. Specially certificate singing problem. I want to test my application on different devices and wish to give my friends whom having different cellphones. But couldn't due to signing problem.
QT: I am still confused on this. Whether this platform capable to fulfill my requirement or not. Secondly which phone supports QT or not...
Honestly, I am bit frustrated while writing this. I am looking someone, experience in these matter, to guide me in this situation.
You can combine native C++ with Qt. Though you'll lose some of the cross-platform nature of Qt by mixing native C++ with it.
See the XQProfile example on Forum Nokia Wiki for mixing Qt and native Symbian C++ for profile changing.
Qt can be installed to practically all devices from S60 3rd Edition FP1 (S60 3.1) onwards. Newer device models ship with Qt preinstalled. Forum Nokia has device specifications that you can filter based on Qt availability.
QT (+ QML) is the language of choice going forward. I believe it is currently on the following phones: N8,C7,C6,E7. i version 4.6.1 with version 4.7 which has the QML support due shortly.
However if you need to target current and older devices then your only choice is Symbian C++.
I came accross a website and what is this QTWebKit? and why do we use it and in which envoirment c++/Java or...
https://trac.webkit.org/wiki/QtWebKit#TechnicalArticles
Citing from your own link:
WebKit is an open source web browser engine. [...] QtWebKit is a project aiming at porting this fabulous engine back to Qt.
The Qt port of WebKit currently compiles and runs on Linux (including Maemo and Meego), Windows, Mac OS X and Symbian."
So it's webkit ported to Qt. What Qt is, is described e.g. here.
A simple search also reveals the Qt Webkit documentation.
Citing the site you mentioned:
WebKit is an open source web browser
engine. (...) QtWebKit is a project aiming at porting this fabulous engine back to Qt.
WebKit being an engine focused on implementing web browser's specific tasks (interpreting a web page's source (HTML, CSS), executing Java Script, creating visual representation and others) makes use of some basic services needed to accomplish these tasks. The examples of such services would be displaying an image on the screen or downloading a file over a network. These services must be provided for it to work. In case of Qt port these services are provided by Qt, which is a cross platform C++ framework for creating applications. You can find more information on Qt here.
I'm starting to porting an Android app to Qt. Planning to port it to MeeGo, Symbian and Linux-Windows desktop versions.
My app uses alarms in Android and I have found XQAlarm class in Qt to be very usefull, BUT its belongs to Mobile Extensions package.
Any equivalent class for desktop (Linux, Windows)? or a workarround class?
If this is for mobile extension, say Symbian, then you will have to use native OS API.
Sorry, by mistake I posted the reply here, instead of replying to : How to set alarm in qt mobility application
I was searching for similar questions on this site for "xqalarm" and got this hit.