2017-01-18 7 views
4

Mit der neuesten Version von Android namens Marshmallow, benötigt ein Bluetooth Low Energy Scan erfordert die Erlaubnis von Standortgruppe. Als Ergebnis, dass eine der folgenden Berechtigungen erforderlich:Warum Standort Erlaubnis für Ble Scan in android Marshmallow ab

ACCESS_COARSE_LOCATION, ACCESS_FINE_LOCATION

Gibt es Gründe, warum wir auf GPS für BLE Scan wechseln müssen?

+0

Mögliche Duplikat [Ort muss aktiviert sein für Bluetooth Low Energy Scanning unter Android 6.0] (https: // stackover flow.com/questions/33045581/location-needs-to-bea-enable-for-bluetooth-low-energy-scanning-on-android-6-0) –

+0

Diese Frage hat eine korrekte Antwort auf diesen Thread .. https://stackoverflow.com/questions/33045581/location-needs-to-enable-for-bluetooth-low-energy-scanning-on-android-6-0 –

Antwort

6

BLE Beacons können verwendet werden, um Standortinformationen zu erhalten, die nicht mehr als die BLE Broadcast UUID Daten und eine Internetverbindung (zB iBeacon, AltBeacon etc.) haben Da dies möglich ist und die Daten per Scan erfasst werden können, eine Berechtigung für Ort ist erforderlich. In Wirklichkeit ist ACCESS_COARSE_LOCATION die erforderliche Ebene, um die Berechtigungsebene NetworkProvider zu erhalten. Mit ACCESS_FINE_LOCATION erhalten Sie NetworkProvider sowie GPS.

2

Mit den Bluetooth-Berechtigungen können Sie Beacons im Vordergrund ohne Standortberechtigungen scannen, für das Scannen im Hintergrund benötigen Sie jedoch Standortberechtigungen. wenn Sie diese Berechtigungen hinzufügen

<uses-permission android:name="android.permission.BLUETOOTH" /> 
<uses-permission android:name="android.permission.BLUETOOTH_ADMIN" /> 

dann Sie diese Berechtigung verwenden müssen auch

<uses-permission 
android:name="android.permission.ACCESS_COARSE_LOCATION”/> 
<uses-feature android:name="android.hardware.location.gps" /> 

siehe Entwicklerführungs here

Verwandte Themen