QtAndroidPrivate Namespace

Der QtAndroidPrivate Namespace bietet verschiedene Funktionen zur Unterstützung der Android-Entwicklung. Mehr...

Kopfzeile: #include <QtCore/private/qandroidextras_p.h>
CMake: find_package(Qt6 REQUIRED COMPONENTS Core)
target_link_libraries(mytarget PRIVATE Qt6::CorePrivate)
qmake: QT += core-private
Seit: Qt 6.2
Status: Vorläufig

Dieser Namespace befindet sich in der Entwicklung und kann sich noch ändern.

Typen

(since 6.2) enum class BindFlag { None, AutoCreate, DebugUnbind, NotForeground, AboveClient, …, ExternalService }
flags BindFlags

Funktionen

(since 6.2) bool bindService(const QAndroidIntent &serviceIntent, const QAndroidServiceConnection &serviceConnection, QtAndroidPrivate::BindFlags flags = BindFlag::None)
(preliminary) QFuture<QtAndroidPrivate::PermissionResult> checkPermission(const QString &permission)
(preliminary) QFuture<QtAndroidPrivate::PermissionResult> requestPermission(const QString &permission)
(since 6.2) void startActivity(const QAndroidIntent &intent, int receiverRequestCode, QAndroidActivityResultReceiver *resultReceiver = nullptr)
(since 6.2) void startActivity(const QJniObject &intent, int receiverRequestCode, QAndroidActivityResultReceiver *resultReceiver = nullptr)
(since 6.2) void startActivity(const QJniObject &intent, int receiverRequestCode, std::function<void (int, int, const QJniObject &)> callbackFunc)
(since 6.2) void startIntentSender(const QJniObject &intentSender, int receiverRequestCode, QAndroidActivityResultReceiver *resultReceiver = nullptr)

Detaillierte Beschreibung

Typ-Dokumentation

[since 6.2] enum class QtAndroidPrivate::BindFlag
flags QtAndroidPrivate::BindFlags

Diese Aufzählung wird mit QtAndroidPrivate::bindService verwendet, um den Modus zu beschreiben, in dem die Bindung durchgeführt wird.

KonstanteWertBeschreibung
QtAndroidPrivate::BindFlag::None0x00000000Keine Optionen.
QtAndroidPrivate::BindFlag::AutoCreate0x00000001Erstellt den Dienst automatisch, solange die Bindung besteht. Siehe BIND_AUTO_CREATE Dokumentation für weitere Details.
QtAndroidPrivate::BindFlag::DebugUnbind0x00000002Debugging-Hilfe für nicht übereinstimmende Aufrufe zum Entbinden einschließen. Siehe die Dokumentation BIND_DEBUG_UNBIND für weitere Details.
QtAndroidPrivate::BindFlag::NotForeground0x00000004Erlauben Sie nicht, dass diese Bindung den Prozess des Zieldienstes in den Vordergrund der Planungspriorität bringt. Siehe die Dokumentation BIND_NOT_FOREGROUND für weitere Details.
QtAndroidPrivate::BindFlag::AboveClient0x00000008Zeigt an, dass die Client-Anwendung, die an diesen Dienst gebunden ist, den Dienst für wichtiger hält als die Anwendung selbst. Siehe die Dokumentation BIND_ABOVE_CLIENT für weitere Details.
QtAndroidPrivate::BindFlag::AllowOomManagement0x00000010Erlaubt dem Prozess, der den gebundenen Dienst hostet, seine normale Speicherverwaltung durchzuführen. Siehe die Dokumentation BIND_ALLOW_OOM_MANAGEMENT für weitere Details.
QtAndroidPrivate::BindFlag::WaivePriority0x00000020Beeinflussen Sie nicht die Planungs- oder Speicherverwaltungspriorität des Host-Prozesses des Zieldienstes. Weitere Informationen finden Sie in der Dokumentation BIND_WAIVE_PRIORITY.
QtAndroidPrivate::BindFlag::Important0x00000040Diesem Dienst wird eine höhere Priorität zugewiesen, damit er bei Bedarf für den Client verfügbar ist. Weitere Informationen finden Sie in der Dokumentation BIND_IMPORTANT.
QtAndroidPrivate::BindFlag::AdjustWithActivity0x00000080Wenn die Bindung aus einer Aktivität erfolgt, kann die Prozesswichtigkeit des Zieldienstes erhöht werden, je nachdem, ob die Aktivität für den Benutzer sichtbar ist. Siehe BIND_ADJUST_WITH_ACTIVITY Dokumentation für weitere Details.
QtAndroidPrivate::BindFlag::ExternalService-2147483648Der zu bindende Dienst ist ein isolierter, externer Dienst. Siehe BIND_EXTERNAL_SERVICE Dokumentation für weitere Details.

Diese Aufzählung wurde in Qt 6.2 eingeführt.

Der Typ BindFlags ist ein Typedef für QFlags<BindFlag>. Er speichert eine OR-Kombination von BindFlag-Werten.

Funktion Dokumentation

[since 6.2] bool QtAndroidPrivate::bindService(const QAndroidIntent &serviceIntent, const QAndroidServiceConnection &serviceConnection, QtAndroidPrivate::BindFlags flags = BindFlag::None)

Bindet den durch serviceIntent, serviceConnection und flags angegebenen Dienst. Das Objekt serviceIntent identifiziert den Dienst, mit dem eine Verbindung hergestellt werden soll. serviceConnection ist ein Listener, der die Informationen empfängt, wenn der Dienst gestartet und gestoppt wird.

Gibt bei Erfolg true zurück

Siehe Android-Dokumentation für weitere Details.

Diese Funktion wurde in Qt 6.2 eingeführt.

Siehe auch QAndroidIntent, QAndroidServiceConnection, und BindFlag.

[preliminary] QFuture<QtAndroidPrivate::PermissionResult> QtAndroidPrivate::checkPermission(const QString &permission)

Diese Funktion befindet sich in der Entwicklung und kann sich noch ändern.

Prüft, ob dieser Prozess über die genannte permission verfügt und gibt ein QFuture zurück, das das Ergebnis der Prüfung darstellt.

Hinweis: QPermission ist die empfohlene API für das Anfordern von Berechtigungen. Wenn QPermission eine Android-Berechtigung, die Sie anfordern möchten, nicht abdeckt, kann stattdessen immer noch diese vorläufige API verwendet werden.

Diese Funktion wurde in Qt 6.2 eingeführt.

Siehe auch requestPermission().

[preliminary] QFuture<QtAndroidPrivate::PermissionResult> QtAndroidPrivate::requestPermission(const QString &permission)

Diese Funktion befindet sich in der Entwicklung und kann sich noch ändern.

Fordert die permission an und gibt eine QFuture zurück, die das Ergebnis der Anfrage darstellt.

Hinweis: QPermission ist die empfohlene API für die Abfrage von Berechtigungen. Wenn QPermission eine Android-Berechtigung, die Sie anfordern möchten, nicht abdeckt, kann stattdessen auch diese vorläufige API verwendet werden.

Diese Funktion wurde in Qt 6.2 eingeführt.

Siehe auch checkPermission().

[since 6.2] void QtAndroidPrivate::startActivity(const QAndroidIntent &intent, int receiverRequestCode, QAndroidActivityResultReceiver *resultReceiver = nullptr)

Startet die durch intent angegebene Aktivität und liefert das Ergebnis asynchron durch resultReceiver, wenn dieses nicht null ist.

Wenn resultReceiver null ist, wird die Methode startActivity() von QNativeInterface::QAndroidApplication::context() aufgerufen. Andernfalls wird startActivityForResult() aufgerufen.

Der receiverRequestCode ist ein eindeutiger Anforderungscode für resultReceiver und wird zusammen mit dem Ergebnis zurückgegeben, so dass es möglich ist, denselben Empfänger für mehr als einen Zweck zu verwenden.

Diese Funktion wurde in Qt 6.2 eingeführt.

[since 6.2] void QtAndroidPrivate::startActivity(const QJniObject &intent, int receiverRequestCode, QAndroidActivityResultReceiver *resultReceiver = nullptr)

Startet die durch intent angegebene Aktivität und liefert das Ergebnis asynchron durch resultReceiver, wenn dieses nicht null ist.

Wenn resultReceiver null ist, wird die Methode startActivity() von QNativeInterface::QAndroidApplication::context() aufgerufen. Andernfalls wird startActivityForResult() aufgerufen.

Der receiverRequestCode ist ein eindeutiger Anforderungscode für resultReceiver und wird zusammen mit dem Ergebnis zurückgegeben, so dass es möglich ist, denselben Empfänger für mehr als einen Zweck zu verwenden.

Diese Funktion wurde in Qt 6.2 eingeführt.

[since 6.2] void QtAndroidPrivate::startActivity(const QJniObject &intent, int receiverRequestCode, std::function<void (int, int, const QJniObject &)> callbackFunc)

Startet die durch intent angegebene Aktivität unter Verwendung des Anforderungscodes receiverRequestCode und liefert das Ergebnis durch den Aufruf von callbackFunc.

Diese Funktion wurde in Qt 6.2 eingeführt.

[since 6.2] void QtAndroidPrivate::startIntentSender(const QJniObject &intentSender, int receiverRequestCode, QAndroidActivityResultReceiver *resultReceiver = nullptr)

Startet die durch intentSender angegebene Aktivität und liefert das Ergebnis asynchron durch resultReceiver, wenn diese nicht null ist.

Wenn resultReceiver null ist, wird die Methode startIntentSender() von QNativeInterface::QAndroidApplication::context() aufgerufen. Andernfalls wird startIntentSenderForResult() aufgerufen.

Der receiverRequestCode ist ein eindeutiger Anforderungscode für resultReceiver und wird zusammen mit dem Ergebnis zurückgegeben, so dass es möglich ist, denselben Empfänger für mehr als einen Zweck zu verwenden.

Diese Funktion wurde in Qt 6.2 eingeführt.

© 2025 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.