在Ubuntu 10.10(Pentium 4 2.80GHz)上尝试使用QtMobility 1.2.0和Qt 4.7.4播放视频时,我看到了糟糕的表现.
有趣的是图腾(也使用gstreamer作为后端)和vlc能够在这台机器上播放这些视频,即使分辨率更高(全屏等).
根据顶部,我的应用程序消耗100%的CPU,而图腾和vlc仅消耗约40%.那真是怪了!所以我在下面分享了应用程序的源代码.它使用QMediaPlayer并QVideoWidget完成工作.
movie.cpp:
#include <QtGui/QMainWindow>
#include <QtGui>
#include <qmediaplayer.h>
#include <qvideowidget.h>
int main(int argc, char* argv[])
{
QApplication app(argc, argv);
QMainWindow mainWindow;
mainWindow.resize(QSize(1280, 500));
QMediaPlayer* mplayer = new QMediaPlayer;
QVideoWidget* vid_widget = new QVideoWidget(&mainWindow);
vid_widget->setAspectRatioMode(Qt::IgnoreAspectRatio);
mainWindow.setCentralWidget(vid_widget);
mplayer->setVideoOutput(vid_widget);
mplayer->setMedia(QUrl::fromLocalFile(argv[1]));
mplayer->setVolume(50);
mplayer->setPlaybackRate(1);
mplayer->play();
mainWindow.show();
return app.exec();
}
Run Code Online (Sandbox Code Playgroud)
movie.pro:
TEMPLATE = app
QT …Run Code Online (Sandbox Code Playgroud) 我试图让我的设备隆隆声,但我的运气很少.我的环境是HTC Sensation Android 2.3.3 API 10.使用Necessitas Qt Creater作为我的IDE.
什么都不做:
QFeedbackHapticsEffect::playThemeEffect( QFeedbackHapticsEffect::ThemeBasic );
Run Code Online (Sandbox Code Playgroud)
崩溃我的申请:
QFeedbackHapticsEffect rumble;
rumble.setAttackIntensity(0.0);
rumble.setAttackTime(250);
rumble.setIntensity(1.0);
rumble.setDuration(100);
rumble.setFadeTime(250);
rumble.setFadeIntensity(0.0);
rumble.start();
rumble.stop();
Run Code Online (Sandbox Code Playgroud)
我用以下内容指定了我的.pro文件
CONFIG += mobility
MOBILITY += feedback
Run Code Online (Sandbox Code Playgroud)
我正在使用包含所需标头的QTM_USE_NAMESPACE.
编辑:
我已设置以下权限:
android.permission.INTERNET
android.permission.WRITE_EXTERNAL_STORAGE
android.permission.VIBRATE
Run Code Online (Sandbox Code Playgroud)
但是我仍然收到分段错误.
我已经下载了Qt Mobility开源项目.我有一套演示应用程序.当它构建并启动App时,我收到了这个错误:
无法启动程序.路径或权限错了吗?
谁能告诉我这个问题可能是什么?
更新:
完整的错误是:
启动/Users/xxxxx/Qt/qt-mobility-opensource-src-1.0.2/config.app/Contents/MacOS/config ...无法启动程序.路径或权限错了吗?
我已经包含了".pro"文件内容:
TEMPLATE = app
TARGET = writemessage
QT += gui
include(../examples.pri)
CONFIG += mobility
MOBILITY = messaging
INCLUDEPATH += ../../src/messaging
HEADERS += \
messagesender.h
SOURCES += \
messagesender.cpp\
main.cpp
symbian:TARGET.CAPABILITY = NetworkServices \
LocalServices \
ReadUserData \
WriteUserData \
UserEnvironment \
ReadDeviceData \
WriteDeviceData
Run Code Online (Sandbox Code Playgroud) 我对Qt手机完全不熟悉,我甚至没有扎实的移动设备体验,如果我问一些明显的东西,那就很抱歉.
我需要开发一个移动应用程序,它应该能够接收类似功能的呼叫(通过互联网,而不是GSM呼叫).回答后,它应该从我们的服务器开始流式传输音频和视频.该调用应该只是一种方式,意思是,流从服务器到设备,但从不在设备之间.
所以我的问题是:
提前谢谢了 :)
错误:
In file included from /opt/qtsdk-2010.05/qt/include/QtCore/qcoreapplication.h:47,
from /opt/qtsdk-2010.05/qt/include/QtGui/qapplication.h:45,
from /opt/qtsdk-2010.05/qt/include/QtGui/QApplication:1,
from main.cpp:3:
/opt/qtsdk-2010.05/qt/include/QtCore/qeventloop.h:51: error: expected initializer before ‘QtCoreModule’
make: *** [main.o] Error 1
Run Code Online (Sandbox Code Playgroud)
我检查过 ; 在我的.h和.cpp文件中丢失,找不到任何内容.我应该在这里发布代码吗?或者错误意味着别的什么?
救命!
支持基于QT的应用程序开发的移动操作系统或平台的数量不断增长.并非所有这些都是QT是构建应用程序的标准框架,因此Qt支持似乎可以分类如下:
哪种移动操作系统或SDK支持使用Qt以上述任何一种方式开发应用程序?
我在网上发现了类似下面的内容
//Get S60 version and display it on label
switch (QSysInfo::s60Version ())
{
case QSysInfo::SV_S60_3_1: return "S60 version: S60 3.1";
case QSysInfo::SV_S60_3_2: return "S60 version: S60 3.2";
case QSysInfo::SV_S60_5_0: return "S60 version: S60 5.0";
case QSysInfo::SV_S60_Unknown: return "S60 version: S60 Unknown";
default:
break;
}
//Get OS version and display it on label
switch (QSysInfo::symbianVersion ())
{
case QSysInfo::QSysInfo::SV_9_2: return "Symbian OS version: 9.2";
case QSysInfo::SV_9_3: return "Symbian OS version: 9.3";
case QSysInfo::SV_9_4: return "Symbian OS version: 9.4";
case QSysInfo::SV_Unknown: return …Run Code Online (Sandbox Code Playgroud) QGeoRoutingManager:http://apidocs.meego.com/1.0/qtmobility/qgeoroutingmanager-members.html
这个类没有构造函数.我忘记了为其指针分配内存的方法.
我做了:
QGeoRoutingManager *a = new QGeoRoutingManager ();
Run Code Online (Sandbox Code Playgroud)
这归因于错误:
calculateRoute.cpp:16: error: no matching function for call to ‘QtMobility::QGeoRoutingManager::QGeoRoutingManager()’
../../../../tarBalls/qt-mobility-opensource-src-1.2.0/install/include/QtLocation/qgeoroutingmanager.h:91: note: candidates are: QtMobility::QGeoRoutingManager::QGeoRoutingManager(const QtMobility::QGeoRoutingManager&)
Run Code Online (Sandbox Code Playgroud)
我应该传递什么,根据错误消息"const QtMobility :: QGeoRoutingManager&"
qt ×8
qt-mobility ×8
c++ ×3
android ×2
ios ×1
mobile ×1
mobile-os ×1
performance ×1
pointers ×1
qt-creator ×1
qt5 ×1
s60 ×1
sdk ×1
symbian ×1
video ×1