diff --git a/src/android/LocationManager.java b/src/android/LocationManager.java index 936e337..0d3c97f 100644 --- a/src/android/LocationManager.java +++ b/src/android/LocationManager.java @@ -84,6 +84,8 @@ public class LocationManager extends CordovaPlugin implements BeaconConsumer { private static final int DEFAULT_SAMPLE_EXPIRATION_MILLISECOND = 20000; private static final String ENABLE_ARMA_FILTER_NAME = "com.unarin.cordova.beacon.android.altbeacon.EnableArmaFilter"; private static final boolean DEFAULT_ENABLE_ARMA_FILTER = false; + private static final String REQUEST_BT_PERMISSION_NAME = "com.unarin.cordova.beacon.android.altbeacon.RequestBtPermission"; + private static final boolean DEFAULT_REQUEST_BT_PERMISSION = true; private static final int DEFAULT_FOREGROUND_SCAN_PERIOD = 1100; private static int CDV_LOCATION_MANAGER_DOM_DELEGATE_TIMEOUT = 30; private static final int BUILD_VERSION_CODES_M = 23; @@ -163,7 +165,11 @@ public void initialize(CordovaInterface cordova, CordovaWebView webView) { } //TODO AddObserver when page loaded - tryToRequestMarshmallowLocationPermission(); + final boolean requestPermission = this.preferences.getBoolean( + REQUEST_BT_PERMISSION_NAME, DEFAULT_REQUEST_BT_PERMISSION); + + if(requestPermission) + tryToRequestMarshmallowLocationPermission(); } /**