aboutsummaryrefslogtreecommitdiffstats
path: root/src/androidextras/android/qandroidfunctions.h
diff options
context:
space:
mode:
authorBogDan Vatra <bogdan@kdab.com>2017-07-04 14:13:29 +0300
committerBogDan Vatra <bogdan@kdab.com>2017-07-26 08:02:26 +0000
commit7c38ca387cf3e9aa6d7f47a00b296247da102147 (patch)
treeee4ab281c729f561c2e85c2b6d8a72de2fe581cc /src/androidextras/android/qandroidfunctions.h
parentda807f68d37fb3159196627904a1554405df90f6 (diff)
Say hello to low level Android Service & Binder implementations
These are the building blocks for higher level APIs such as Qt Remote Objects. [ChangeLog][Android] Added low level APIs for Android Service & Binder. Change-Id: I320214d310a398541bbde985ecf67bf6101c0b67 Reviewed-by: Eskil Abrahamsen Blomfeldt <eskil.abrahamsen-blomfeldt@qt.io>
Diffstat (limited to 'src/androidextras/android/qandroidfunctions.h')
-rw-r--r--src/androidextras/android/qandroidfunctions.h22
1 files changed, 22 insertions, 0 deletions
diff --git a/src/androidextras/android/qandroidfunctions.h b/src/androidextras/android/qandroidfunctions.h
index 7095c1b..c5023f4 100644
--- a/src/androidextras/android/qandroidfunctions.h
+++ b/src/androidextras/android/qandroidfunctions.h
@@ -52,6 +52,9 @@
QT_BEGIN_NAMESPACE
class QAndroidActivityResultReceiver;
+class QAndroidServiceConnection;
+class QAndroidIntent;
+
namespace QtAndroid
{
Q_ANDROIDEXTRAS_EXPORT QAndroidJniObject androidActivity();
@@ -66,6 +69,25 @@ namespace QtAndroid
int receiverRequestCode,
QAndroidActivityResultReceiver *resultReceiver = nullptr);
+ enum class BindFlag {
+ None = 0x00000000,
+ AutoCreate = 0x00000001,
+ DebugUnbind = 0x00000002,
+ NotForeground = 0x00000004,
+ AboveClient = 0x00000008,
+ AllowOomManagement = 0x00000010,
+ WaivePriority = 0x00000020,
+ Important = 0x00000040,
+ AdjustWithActivity = 0x00000080,
+ ExternalService = -2147483648 // 0x80000000
+
+ };
+ Q_DECLARE_FLAGS(BindFlags, BindFlag)
+
+ Q_ANDROIDEXTRAS_EXPORT bool bindService(const QAndroidIntent &serviceIntent,
+ const QAndroidServiceConnection &serviceConnection,
+ BindFlags flags = BindFlag::None);
+
typedef std::function<void()> Runnable;
Q_ANDROIDEXTRAS_EXPORT void runOnAndroidThread(const Runnable &runnable);
Q_ANDROIDEXTRAS_EXPORT void runOnAndroidThreadSync(const Runnable &runnable, int timeoutMs = INT_MAX);