summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorLars Schmertmann <Lars.Schmertmann@governikus.de>2017-01-11 17:29:40 +0100
committerLars Schmertmann <lars.schmertmann@governikus.de>2017-01-12 11:34:59 +0000
commite0571b53b49facba595c353e3f361ad9bb96b983 (patch)
tree64af0a72efbd57e20c70527a5039cdc57da98b1d
parent2df17b2a0c050df98bd87a3dff218096ec84b2fb (diff)
Do not request an unnessessary dangerous right
Bluetooth LE discovery needs ACCESS_COARSE_LOCATION permission since android 6.0. In the manifest file it is possible use it by "<uses-permission-sdk-23 android:name="ACCESS_COARSE_LOCATION" />" in general. But the bluetooth LE discovery requests it for every android version. This change enables the request for android > 6.0 only (API-Level >=23). Task-number: QTBUG-58085 Change-Id: I78ad2fe83eb16eaf45813137335f85c7b3930992 Reviewed-by: BogDan Vatra <bogdan@kdab.com>
-rw-r--r--src/bluetooth/qbluetoothdevicediscoveryagent_android.cpp3
1 files changed, 2 insertions, 1 deletions
diff --git a/src/bluetooth/qbluetoothdevicediscoveryagent_android.cpp b/src/bluetooth/qbluetoothdevicediscoveryagent_android.cpp
index 2d6e64be..9ceee2bc 100644
--- a/src/bluetooth/qbluetoothdevicediscoveryagent_android.cpp
+++ b/src/bluetooth/qbluetoothdevicediscoveryagent_android.cpp
@@ -45,6 +45,7 @@
#include <QtCore/private/qjnihelpers_p.h>
#include "android/devicediscoverybroadcastreceiver_p.h"
#include <QtAndroidExtras/QAndroidJniEnvironment>
+#include <QtAndroid>
QT_BEGIN_NAMESPACE
@@ -147,7 +148,7 @@ void QBluetoothDeviceDiscoveryAgentPrivate::start(QBluetoothDeviceDiscoveryAgent
// check Android v23+ permissions
// -> BTLE search requires android.permission.ACCESS_COARSE_LOCATION
- if (requestedMethods && QBluetoothDeviceDiscoveryAgent::LowEnergyMethod) {
+ if (requestedMethods && QBluetoothDeviceDiscoveryAgent::LowEnergyMethod && QtAndroid::androidSdkVersion() >= 23) {
QString permission(QLatin1String("android.permission.ACCESS_COARSE_LOCATION"));
// do we have required permission already, if so nothing to do