我正在尝试从Symbian手机收件箱中阅读短信。我使用Qt Creator创建了一个应用程序并使其在Symbian模拟器中运行,但在诺基亚N8中它无法读取任何消息(短信或电子邮件)。
这是我的最小代码:
#include "mainwindow.h"
#include "ui_mainwindow.h"
#include <QtCore/QCoreApplication>
#include <QMessageManager>
QTM_USE_NAMESPACE
MainWindow::MainWindow(QWidget *parent)
: QMainWindow(parent), ui(new Ui::MainWindow)
{
ui->setupUi(this);
QMessageManager mm;
QMessageIdList msgs = mm.queryMessages();
ui->textBrowser->append(QString("Messages %1").arg(msgs.size()));
for (int i = 0; i < msgs.count(); ++i) {
QMessage message = mm.message(msgs.at(i));
ui->textBrowser->append(message.from().addressee());
ui->textBrowser->append(message.to().at(0).addressee());
ui->textBrowser->append(message.textContent());
}
}
// ...rest is boilerplate code
在模拟器中,它会打印出它的测试消息。在N8中,它只显示“消息0”,尽管有短信和电子邮件消息。
在.pro文件中我声明了
CONFIG += mobility
MOBILITY += messaging
我是Qt的新手所以这可能是每个人都认为理所当然的事情。我尝试了调试和发布版本,并将创建的Qt Creator sis文件复制到手机并进行安装,但结果是一样的。
答案 0 :(得分:0)
结帐User guide: Symbian Signed。要读取SMS消息,您需要为symbian添加ReadUserData功能。在.pro文件中,添加
symbian:TARGET.CAPABILITY += ReadUserData