QMessageManager queryMessages не работает в Nokia N8

Я пытаюсь прочитать SMS-сообщения из почтового ящика телефона Symbian. Я создал приложение с Qt Creator и запустил его в Symbian Simulator, но в Nokia N8 оно не может читать сообщения (SMS или электронная почта).

Вот мой минимальный код:

#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", хотя есть SMS и сообщения электронной почты.

В файле.pro я объявил

CONFIG += mobility
MOBILITY += messaging

Я новичок в Qt, так что это может быть то, что каждый принимает как должное. Я попытался отладить и выпустить сборки, а также скопировать созданный в телефон sis-файл Qt Creator и установить его, но результат тот же.

1 ответ

Решение

Ознакомьтесь с руководством пользователя: Symbian Signed. Для чтения SMS-сообщений вам нужно добавить возможность ReadUserData для symbian. В файл.pro добавьте

symbian:TARGET.CAPABILITY += ReadUserData
Другие вопросы по тегам