QBluetoothTransferManager Class

The QBluetoothTransferManager class transfers data to another device using Object Push Profile (OPP). 更多...

头文件: #include <QBluetoothTransferManager>
qmake: QT += bluetooth
开始支持版本: Qt 5.2
基类: QObject

公有函数

QBluetoothTransferManager(QObject *parent = Q_NULLPTR)
~QBluetoothTransferManager()
QBluetoothTransferReply *put(const QBluetoothTransferRequest &request, QIODevice *data)
  • 32 个公有函数继承自 QObject

信号

void finished(QBluetoothTransferReply *reply)

其他继承的成员

  • 1 个属性继承自 QObject
  • 1 个公有槽函数继承自 QObject
  • 1 个公有变量继承自 QObject
  • 10 个静态公有成员继承自 QObject
  • 9 个受保护的函数继承自 QObject
  • 2 个受保护的变量继承自 QObject

详细描述

The QBluetoothTransferManager class transfers data to another device using Object Push Profile (OPP).

QBluetoothTransferManager uses OBEX to send put commands to remote devices. A typical OBEX transfer is initialized as follows:


  // Create a transfer manager
  QBluetoothTransferManager *transferManager = new QBluetoothTransferManager(this);

  // Create the transfer request and file to be sent
  QBluetoothAddress remoteAddress("00:11:22:33:44:55:66");
  QBluetoothTransferRequest request(remoteAddress);
  QFile *file = new QFile("testfile.txt");

  // Ask the transfer manager to send it
  QBluetoothTransferReply *reply = transferManager->put(request, file);
  if (reply->error() == QBluetoothTransferReply::NoError) {

      // Connect to the reply's signals to be informed about the status and do cleanups when done
      QObject::connect(reply, SIGNAL(finished(QBluetoothTransferReply*)),
                       this, SLOT(transferFinished(QBluetoothTransferReply*)));
      QObject::connect(reply, SIGNAL(error(QBluetoothTransferReply::TransferError)),
                       this, SLOT(error(QBluetoothTransferReply::TransferError)));
  } else {
      qWarning() << "Cannot push testfile.txt:" << reply->errorString();
  }

Note that this API is not currently supported on Android.

成员函数

QBluetoothTransferManager::QBluetoothTransferManager(QObject *parent = Q_NULLPTR)

Constructs a new QBluetoothTransferManager with parent.

QBluetoothTransferManager::~QBluetoothTransferManager()

Destroys the QBluetoothTransferManager.

[signal] void QBluetoothTransferManager::finished(QBluetoothTransferReply *reply)

This signal is emitted when the transfer for reply finishes.

QBluetoothTransferReply *QBluetoothTransferManager::put(const QBluetoothTransferRequest &request, QIODevice *data)

Sends the contents of data to the remote device identified by request, and returns a new QBluetoothTransferReply that can be used to track the request's progress. data must remain valid until the finished() signal is emitted.

The returned QBluetoothTransferReply object must be immediately checked for its error() state. This is required in case this function detects an error during the initialization of the QBluetoothTransferReply. In such cases QBluetoothTransferReply::isFinished() returns true as well.

If the platform does not support the Object Push profile, this function will return 0.