Spec-Zone.ru › Qt 5.15

Класс QAndroidBinder

Оборачивает самые важные методы класса Android Binder. Подробнее...

Заголовок: #include <QAndroidBinder>
qmake: QT += androidextras
С момента: Qt 5.10

Этот класс был представлен в Qt 5.10.

  • Список всех членов, включая унаследованные

Типы публичного доступа

Перечисление CallType { Normal, OneWay }

Публичные функции

QAndroidBinder(const QAndroidJniObject &binder)
QAndroidBinder()
QAndroidJniObject handle() const
virtual bool onTransact(int code, const QAndroidParcel &data, const QAndroidParcel &reply, QAndroidBinder::CallType flags)
bool transact(int code, const QAndroidParcel &data, QAndroidParcel *reply = nullptr, QAndroidBinder::CallType flags = CallType::Normal) const

Подробное описание

Класс QAndroidBinder — это вспомогательный класс, который оборачивает самые важные методы Android Binder.

Документация по типам членов

Перечисление QAndroidBinder::CallType

Это перечисление используется с QAndroidBinder::transact() для описания режима выполнения вызова IPC.

Постоянная Значение Описание
QAndroidBinder::CallType::Normal 0 обычный IPC, что означает, что вызывающий процесс ожидает результат от вызываемого
QAndroidBinder::CallType::OneWay 1 односторонний IPC, что означает, что вызывающий процесс возвращается немедленно, не дожидаясь результата от вызываемого

Документация по функциям-членам

QAndroidBinder::QAndroidBinder(const QAndroidJniObject &binder)

Создает новый объект из объекта Java binder.

См. также transact.

QAndroidBinder::QAndroidBinder()

Создает новый объект, который может использоваться для выполнения IPC.

См. также onTransact и transact.

QAndroidJniObject QAndroidBinder::handle() const

Возвращаемое значение полезно для вызова других API Java, которые не покрываются этой оберткой

[virtual] bool QAndroidBinder::onTransact(int code, const QAndroidParcel &data, const QAndroidParcel &reply, QAndroidBinder::CallType flags)

Реализация по умолчанию — это заглушка, которая возвращает false. Пользователь должен переопределить этот метод, чтобы получить данные транзакции от вызывающего процесса.

code — это действие, которое нужно выполнить. data — это данные, сериализованные вызывающим процессом. reply — это данные, сериализованные для отправки вызывающему процессу. flags — дополнительные флаги операции.

Предупреждение: Этот метод вызывается из потока Binder, который отличается от потока, в котором был создан этот объект.

См. также transact.

bool QAndroidBinder::transact(int code, const QAndroidParcel &data, QAndroidParcel *reply = nullptr, QAndroidBinder::CallType flags = CallType::Normal) const

Выполняет вызов IPC

code — это действие, которое нужно выполнить. Должно быть в диапазоне от FIRST_CALL_TRANSACTION до LAST_CALL_TRANSACTION. data — это данные, которые нужно отправить целевому объекту. reply (если указан) — это данные, которые нужно получить от целевого объекта. Может быть nullptr, если возвращаемое значение не интересует. flags — дополнительные флаги операции.

Возвращает true при успехе

© The Qt Company Ltd
Licensed under the GNU Free Documentation License, Version 1.3.
https://doc.qt.io/qt-5.15/qandroidbinder.html

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API