diff options
author | Alex Blasche <alexander.blasche@theqtcompany.com> | 2016-08-03 10:25:41 +0200 |
---|---|---|
committer | Alex Blasche <alexander.blasche@qt.io> | 2016-08-03 11:38:09 +0000 |
commit | af14b0d0e3b374f130e580c03dee6af1250cd6e1 (patch) | |
tree | d29585916011d31c8b645f79ba2bfa4d1f3894e9 /src/bluetooth/android | |
parent | 60d1ebac9e81619a24e66fc6defc3e0299491a9d (diff) |
Make Classic QtBluetooth work as an Android service
Change-Id: Ibde0242b058f728fd7e060b37f427c208325db13
Reviewed-by: BogDan Vatra <bogdan@kdab.com>
Diffstat (limited to 'src/bluetooth/android')
-rw-r--r-- | src/bluetooth/android/androidbroadcastreceiver.cpp | 8 | ||||
-rw-r--r-- | src/bluetooth/android/androidbroadcastreceiver_p.h | 2 |
2 files changed, 6 insertions, 4 deletions
diff --git a/src/bluetooth/android/androidbroadcastreceiver.cpp b/src/bluetooth/android/androidbroadcastreceiver.cpp index d2a088c4..50465017 100644 --- a/src/bluetooth/android/androidbroadcastreceiver.cpp +++ b/src/bluetooth/android/androidbroadcastreceiver.cpp @@ -53,8 +53,10 @@ Q_DECLARE_LOGGING_CATEGORY(QT_BT_ANDROID) AndroidBroadcastReceiver::AndroidBroadcastReceiver(QObject* parent) : QObject(parent), valid(false) { - //get QtActivity - activityObject = QAndroidJniObject(QtAndroidPrivate::activity()); + // get Qt Context + // TODO: replace with QtAndroidPrivate::context() introduced by Qt 5.8 + contextObject = QAndroidJniObject(QtAndroidPrivate::activity() + ? QtAndroidPrivate::activity() : QtAndroidPrivate::service()); broadcastReceiverObject = QAndroidJniObject("org/qtproject/qt5/android/bluetooth/QtBluetoothBroadcastReceiver"); if (!broadcastReceiverObject.isValid()) @@ -92,7 +94,7 @@ void AndroidBroadcastReceiver::addAction(const QAndroidJniObject &action) intentFilterObject.callMethod<void>("addAction", "(Ljava/lang/String;)V", action.object<jstring>()); - activityObject.callObjectMethod( + contextObject.callObjectMethod( "registerReceiver", "(Landroid/content/BroadcastReceiver;Landroid/content/IntentFilter;)Landroid/content/Intent;", broadcastReceiverObject.object<jobject>(), diff --git a/src/bluetooth/android/androidbroadcastreceiver_p.h b/src/bluetooth/android/androidbroadcastreceiver_p.h index 1aa3049d..01d57992 100644 --- a/src/bluetooth/android/androidbroadcastreceiver_p.h +++ b/src/bluetooth/android/androidbroadcastreceiver_p.h @@ -79,7 +79,7 @@ protected: virtual void onReceiveLeScan(JNIEnv *env, jobject jBluetoothDevice, jint rssi) = 0; - QAndroidJniObject activityObject; + QAndroidJniObject contextObject; QAndroidJniObject intentFilterObject; QAndroidJniObject broadcastReceiverObject; bool valid; |