Sur cette page

QAndroidBinder Class

Enveloppe les méthodes les plus importantes de la classe Binder d'Android. En savoir plus...

En-tête : #include <QtCore/private/qandroidextras_p.h>
CMake : find_package(Qt6 REQUIRED COMPONENTS CorePrivate)
target_link_libraries(mytarget PRIVATE Qt6::CorePrivate)
qmake : QT += core-private
Depuis : Qt 6.2
Statut : Aperçu technologique

Cette classe est en avant-première technologique et est susceptible d'être modifiée.

Types publics

enum class CallType { Normal, OneWay }

Fonctions publiques

QAndroidBinder()
QAndroidBinder(const QJniObject &binder)
QJniObject 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

Description détaillée

QAndroidBinder est une classe utilitaire qui regroupe les méthodes les plus importantes de Android Binder.

Documentation sur les types de membres

enum class QAndroidBinder::CallType

Cette énumération est utilisée avec la fonction ` QAndroidBinder::transact()` pour décrire le mode dans lequel l'appel IPC est effectué.

ConstanteValeurDescription
QAndroidBinder::CallType::Normal0IPC normal, ce qui signifie que l'appelant attend le résultat de l'appelé
QAndroidBinder::CallType::OneWay1IPC unidirectionnel, ce qui signifie que l'appelant revient immédiatement, sans attendre le résultat de l'appelé

Documentation des fonctions membres

[explicit] QAndroidBinder::QAndroidBinder()

Crée un nouvel objet pouvant être utilisé pour effectuer des communications interprocessus (IPC).

Voir également onTransact et transact.

QAndroidBinder::QAndroidBinder(const QJniObject &binder)

Crée un nouvel objet à partir de l'objet Java ` binder `.

Voir aussi transact.

QJniObject QAndroidBinder::handle() const

La valeur de retour est utile pour appeler d'autres API Java qui ne sont pas prises en charge par ce wrapper.

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

L'implémentation par défaut est un stub qui renvoie « false ». L'utilisateur doit redéfinir cette méthode pour récupérer les données de transaction auprès de l'appelant.

L'code est l'action à effectuer. L'data est la donnée marshalée envoyée par l'appelant.
The reply is the marshaled data to be sent to the caller.
The flags are the additional operation flags.

Avertissement : cette méthode est appelée depuis le thread de Binder, qui est différent du thread dans lequel cet objet a été créé.

Voir également transact.

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

Effectue un appel IPC

L'code est l'action à effectuer. Elle doit se situer entre FIRST_CALL_TRANSACTION et LAST_CALL_TRANSACTION.
The data is the marshaled data to send to the target.
The reply (if specified) is the marshaled data to be received from the target. May be nullptr if you are not interested in the return value.
The flags are the additional operation flags.

Renvoie « true » en cas de succès

© 2026 The Qt Company Ltd. Documentation contributions included herein are the copyrights of their respective owners. The documentation provided herein is licensed under the terms of the GNU Free Documentation License version 1.3 as published by the Free Software Foundation. Qt and respective logos are trademarks of The Qt Company Ltd. in Finland and/or other countries worldwide. All other trademarks are property of their respective owners.