diff options
author | Tobrun <tobrun.van.nuland@gmail.com> | 2016-12-21 12:32:07 +0100 |
---|---|---|
committer | GitHub <noreply@github.com> | 2016-12-21 12:32:07 +0100 |
commit | 2b38af877871e234d9afb415dab68aa0543403da (patch) | |
tree | 50a064fcf8836ede081f65aaedb2e1e37514cbf9 /platform/android/MapboxGLAndroidSDK/src/main/java/com/mapbox/mapboxsdk/location | |
parent | a6b1773a44d4ef086eb30967cb041cb64312650a (diff) | |
download | qtlocation-mapboxgl-2b38af877871e234d9afb415dab68aa0543403da.tar.gz |
[android] - update lost to 2.0.0, gradle cleanup (#7494)
Diffstat (limited to 'platform/android/MapboxGLAndroidSDK/src/main/java/com/mapbox/mapboxsdk/location')
-rw-r--r-- | platform/android/MapboxGLAndroidSDK/src/main/java/com/mapbox/mapboxsdk/location/LocationServices.java | 39 |
1 files changed, 29 insertions, 10 deletions
diff --git a/platform/android/MapboxGLAndroidSDK/src/main/java/com/mapbox/mapboxsdk/location/LocationServices.java b/platform/android/MapboxGLAndroidSDK/src/main/java/com/mapbox/mapboxsdk/location/LocationServices.java index 666dcb565f..a1ed5d5b00 100644 --- a/platform/android/MapboxGLAndroidSDK/src/main/java/com/mapbox/mapboxsdk/location/LocationServices.java +++ b/platform/android/MapboxGLAndroidSDK/src/main/java/com/mapbox/mapboxsdk/location/LocationServices.java @@ -17,6 +17,8 @@ import com.mapzen.android.lost.api.LostApiClient; import java.util.concurrent.CopyOnWriteArrayList; +import static com.mapzen.android.lost.api.LocationServices.FusedLocationApi; + /** * Manages locational updates. Contains methods to register and unregister location listeners. * <ul> @@ -31,7 +33,8 @@ import java.util.concurrent.CopyOnWriteArrayList; * in the history stack. * </p> */ -public class LocationServices implements com.mapzen.android.lost.api.LocationListener { +public class LocationServices implements LostApiClient.ConnectionCallbacks, + com.mapzen.android.lost.api.LocationListener { private static LocationServices instance; @@ -50,7 +53,7 @@ public class LocationServices implements com.mapzen.android.lost.api.LocationLis super(); this.context = context; // Setup location services - locationClient = new LostApiClient.Builder(context).build(); + locationClient = new LostApiClient.Builder(context).addConnectionCallbacks(this).build(); locationListeners = new CopyOnWriteArrayList<>(); } @@ -81,38 +84,46 @@ public class LocationServices implements com.mapzen.android.lost.api.LocationLis // Disconnect if (locationClient.isConnected()) { // Disconnect first to ensure that the new requests are GPS - com.mapzen.android.lost.api.LocationServices.FusedLocationApi.removeLocationUpdates(this); + FusedLocationApi.removeLocationUpdates(locationClient, this); locationClient.disconnect(); } + isGpsEnabled = enableGPS; // Setup Fresh locationClient.connect(); - Location lastLocation = com.mapzen.android.lost.api.LocationServices.FusedLocationApi.getLastLocation(); + } + + @Override + public void onConnected() { + //noinspection MissingPermission + Location lastLocation = FusedLocationApi.getLastLocation(locationClient); if (lastLocation != null) { this.lastLocation = lastLocation; } LocationRequest locationRequest; - if (enableGPS) { + if (isGpsEnabled) { // LocationRequest Tuned for GPS locationRequest = LocationRequest.create() .setFastestInterval(1000) .setSmallestDisplacement(3.0f) .setPriority(LocationRequest.PRIORITY_HIGH_ACCURACY); - - com.mapzen.android.lost.api.LocationServices.FusedLocationApi.requestLocationUpdates(locationRequest, this); + //noinspection MissingPermission + FusedLocationApi.requestLocationUpdates(locationClient, locationRequest, this); } else { // LocationRequest Tuned for PASSIVE locationRequest = LocationRequest.create() .setFastestInterval(1000) .setSmallestDisplacement(3.0f) .setPriority(LocationRequest.PRIORITY_NO_POWER); - - com.mapzen.android.lost.api.LocationServices.FusedLocationApi.requestLocationUpdates(locationRequest, this); + //noinspection MissingPermission + FusedLocationApi.requestLocationUpdates(locationClient, locationRequest, this); } + } - isGpsEnabled = enableGPS; + @Override + public void onConnectionSuspended() { } /** @@ -190,4 +201,12 @@ public class LocationServices implements com.mapzen.android.lost.api.LocationLis } return true; } + + @Override + public void onProviderDisabled(String provider) { + } + + @Override + public void onProviderEnabled(String provider) { + } } |