diff options
author | Alex Blasche <alexander.blasche@qt.io> | 2019-10-18 09:59:38 +0200 |
---|---|---|
committer | Alex Blasche <alexander.blasche@qt.io> | 2019-10-18 14:41:13 +0200 |
commit | a22807beee00050ebf04f069cdf0ea4ab40ebbf9 (patch) | |
tree | 1e68d5e44862f6d519193883deb7ac6744683ac4 | |
parent | 245f19122c2a6a112a35ee65556bcf00b6545d87 (diff) | |
download | qtconnectivity-a22807beee00050ebf04f069cdf0ea4ab40ebbf9.tar.gz |
Fix classic device discovery on Android
It seems recent Android releases (at least confirmed for Android 9)
require location permission for classic device discovery. Previously,
it was only required for BTLE discovery.
This patch ensures the permission check is done for every type
of device discovery on Android.
Task-number: QTBUG-69615
Change-Id: I9596c083ecfd9b5e861c1aa5e9900bab5f44237f
Reviewed-by: BogDan Vatra <bogdan@kdab.com>
Reviewed-by: Oliver Wolff <oliver.wolff@qt.io>
-rw-r--r-- | src/bluetooth/qbluetoothdevicediscoveryagent_android.cpp | 6 |
1 files changed, 2 insertions, 4 deletions
diff --git a/src/bluetooth/qbluetoothdevicediscoveryagent_android.cpp b/src/bluetooth/qbluetoothdevicediscoveryagent_android.cpp index 443be14d..ce3b8f10 100644 --- a/src/bluetooth/qbluetoothdevicediscoveryagent_android.cpp +++ b/src/bluetooth/qbluetoothdevicediscoveryagent_android.cpp @@ -150,10 +150,8 @@ void QBluetoothDeviceDiscoveryAgentPrivate::start(QBluetoothDeviceDiscoveryAgent } // check Android v23+ permissions - // -> BTLE search requires android.permission.ACCESS_COARSE_LOCATION or android.permission.ACCESS_FINE_LOCATION - if (requestedMethods & QBluetoothDeviceDiscoveryAgent::LowEnergyMethod - && QtAndroid::androidSdkVersion() >= 23) - { + // -> any device search requires android.permission.ACCESS_COARSE_LOCATION or android.permission.ACCESS_FINE_LOCATION + if (QtAndroid::androidSdkVersion() >= 23) { const QString coarsePermission(QLatin1String("android.permission.ACCESS_COARSE_LOCATION")); const QString finePermission(QLatin1String("android.permission.ACCESS_FINE_LOCATION")); |