QtAndroidPrivate Namespace

QtAndroidPrivate 네임스페이스는 안드로이드 개발을 돕기 위한 기타 기능을 제공합니다. 더 보기...

헤더: #include <QtCore/private/qandroidextras_p.h>
CMake: find_package(Qt6 REQUIRED COMPONENTS Core)
target_link_libraries(mytarget PRIVATE Qt6::CorePrivate)
qmake: QT += core-private
이후: Qt 6.2
상태: 예비

이 네임스페이스는 개발 중이며 변경될 수 있습니다.

유형

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

함수

(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)

상세 설명

유형 문서

[since 6.2] 열거형 클래스 QtAndroidPrivate::BindFlag
플래그 QtAndroidPrivate::BindFlags

이 열거형은 바인딩이 수행되는 모드를 설명하기 위해 QtAndroidPrivate::bindService 와 함께 사용됩니다.

Constant설명
QtAndroidPrivate::BindFlag::None0x00000000옵션이 없습니다.
QtAndroidPrivate::BindFlag::AutoCreate0x00000001바인딩이 존재하는 한 자동으로 서비스를 생성합니다. 자세한 내용은 BIND_AUTO_CREATE 문서를 참조하세요.
QtAndroidPrivate::BindFlag::DebugUnbind0x00000002일치하지 않는 호출에 대한 디버깅 도움말을 포함하여 바인딩을 해제합니다. 자세한 내용은 BIND_DEBUG_UNBIND 설명서를 참조하세요.
QtAndroidPrivate::BindFlag::NotForeground0x00000004이 바인딩으로 인해 대상 서비스의 프로세스가 포그라운드 스케줄링 우선 순위로 올라가지 않도록 하세요. 자세한 내용은 BIND_NOT_FOREGROUND 설명서를 참조하세요.
QtAndroidPrivate::BindFlag::AboveClient0x00000008이 서비스에 바인딩하는 클라이언트 애플리케이션이 서비스를 앱 자체보다 더 중요하게 생각함을 나타냅니다. 자세한 내용은 BIND_ABOVE_CLIENT 설명서를 참조하십시오.
QtAndroidPrivate::BindFlag::AllowOomManagement0x00000010바인딩된 서비스를 호스팅하는 프로세스가 정상적인 메모리 관리를 수행하도록 허용합니다. 자세한 내용은 BIND_ALLOW_OOM_MANAGEMENT 설명서를 참조하세요.
QtAndroidPrivate::BindFlag::WaivePriority0x00000020대상 서비스 호스팅 프로세스의 스케줄링 또는 메모리 관리 우선순위에 영향을 주지 않습니다. 자세한 내용은 BIND_WAIVE_PRIORITY 설명서를 참조하세요.
QtAndroidPrivate::BindFlag::Important0x00000040이 서비스는 클라이언트가 필요할 때 사용할 수 있도록 더 높은 우선순위를 할당받습니다. 자세한 내용은 BIND_IMPORTANT 문서를 참조하세요.
QtAndroidPrivate::BindFlag::AdjustWithActivity0x00000080활동에서 바인딩하는 경우 사용자에게 활동이 표시되는지 여부에 따라 대상 서비스의 프로세스 중요도가 높아지도록 허용합니다. 자세한 내용은 BIND_ADJUST_WITH_ACTIVITY 설명서를 참조하세요.
QtAndroidPrivate::BindFlag::ExternalService-2147483648바인딩되는 서비스가 격리된 외부 서비스입니다. 자세한 내용은 BIND_EXTERNAL_SERVICE 문서를 참조하세요.

이 열거형은 Qt 6.2에 도입되었습니다.

BindFlags 유형은 QFlags<BindFlag>에 대한 typedef입니다. BindFlag 값의 OR 조합을 저장합니다.

함수 문서

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

serviceIntent, serviceConnectionflags 에서 제공하는 서비스를 바인딩합니다. serviceIntent 객체는 연결할 서비스를 식별합니다. serviceConnection 는 서비스가 시작 및 중지될 때 정보를 수신하는 리스너입니다.

성공 시 참을 반환합니다.

자세한 내용은 안드로이드 문서를 참조하세요.

이 함수는 Qt 6.2에 도입되었습니다.

QAndroidIntent, QAndroidServiceConnection, BindFlag참조하세요 .

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

이 기능은 개발 중이며 변경될 수 있습니다.

이 프로세스의 이름이 permission 인지 확인하고 확인 결과를 나타내는 QFuture 을 반환합니다.

참고: QPermission 은 권한 요청에 사용할 것을 권장하는 API입니다. QPermission 에 요청하려는 Android 권한이 포함되지 않는 경우에도 이 예비 API를 대신 사용할 수 있습니다.

이 기능은 Qt 6.2에 도입되었습니다.

requestPermission()도 참조하세요 .

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

이 기능은 개발 중이며 변경될 수 있습니다.

permission 을 요청하고 요청 결과를 나타내는 QFuture 을 반환합니다.

참고: QPermission 은 권한 요청에 사용할 것을 권장하는 API입니다. QPermission 에 요청하려는 Android 권한이 포함되지 않는 경우에도 이 예비 API를 대신 사용할 수 있습니다.

이 기능은 Qt 6.2에 도입되었습니다.

checkPermission()도 참조하세요 .

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

intent 에서 제공한 활동을 시작하고 null이 아닌 경우 resultReceiver 을 통해 비동기적으로 결과를 제공합니다.

resultReceiver 가 null이면 QNativeInterface::QAndroidApplication::context()의 startActivity() 메서드가 호출됩니다. 그렇지 않으면 startActivityForResult() 이 호출됩니다.

receiverRequestCoderesultReceiver 에 고유한 요청 코드이며 결과와 함께 반환되므로 동일한 수신자를 두 개 이상의 인텐트에 사용할 수 있습니다.

이 함수는 Qt 6.2에 도입되었습니다.

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

intent 에서 제공한 활동을 시작하고 null이 아닌 경우 resultReceiver 을 통해 비동기적으로 결과를 제공합니다.

resultReceiver 가 null이면 QNativeInterface::QAndroidApplication::context()의 startActivity() 메서드가 호출됩니다. 그렇지 않으면 startActivityForResult() 이 호출됩니다.

receiverRequestCoderesultReceiver 에 고유한 요청 코드이며 결과와 함께 반환되므로 동일한 수신자를 두 개 이상의 인텐트에 사용할 수 있습니다.

이 함수는 Qt 6.2에 도입되었습니다.

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

요청 코드 receiverRequestCode 을 사용하여 intent 에서 제공한 활동을 시작하고 callbackFunc 을 호출하여 결과를 제공합니다.

이 함수는 Qt 6.2에 도입되었습니다.

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

intentSender 에서 제공한 활동을 시작하고 null이 아닌 경우 resultReceiver 을 통해 비동기적으로 결과를 제공합니다.

resultReceiver 가 null이면 QNativeInterface::QAndroidApplication::context()의 startIntentSender() 메서드가 호출됩니다. 그렇지 않으면 startIntentSenderForResult() 이 호출됩니다.

receiverRequestCoderesultReceiver 에 고유한 요청 코드이며 결과와 함께 반환되므로 동일한 수신자를 두 개 이상의 인텐트에 사용할 수 있습니다.

이 함수는 Qt 6.2에 도입되었습니다.

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