From 517ac7b50da2146a50cf5f41922f7c87a4fabd8d Mon Sep 17 00:00:00 2001 From: Cameron Mace Date: Sat, 7 Oct 2017 15:46:18 -0400 Subject: [PATCH 1/3] reverted lost to 1.1 --- circle.yml | 4 +- mapbox/app/build.gradle | 4 +- mapbox/libandroid-telemetry/build.gradle | 4 +- .../location/LostLocationEngine.java | 67 ++++++------------- 4 files changed, 28 insertions(+), 51 deletions(-) diff --git a/circle.yml b/circle.yml index bfb081cf4..1f91b73d7 100644 --- a/circle.yml +++ b/circle.yml @@ -110,13 +110,13 @@ jobs: - deploy: name: Publish Java Services To Maven Central command: | - if [ "${CIRCLE_BRANCH}" == "master" ]; then + if [ "${CIRCLE_BRANCH}" == "cam-fix-lost-update" ]; then make publish-java ; fi - deploy: name: Publish Android Services To Maven Central command: | - if [ "${CIRCLE_BRANCH}" == "master" ]; then + if [ "${CIRCLE_BRANCH}" == "cam-fix-lost-update" ]; then make publish-android ; fi - store_artifacts: diff --git a/mapbox/app/build.gradle b/mapbox/app/build.gradle index e9bb63fac..b3bba6b17 100644 --- a/mapbox/app/build.gradle +++ b/mapbox/app/build.gradle @@ -60,7 +60,9 @@ dependencies { compile rootProject.ext.dep.gmsLocation // LOST - compile "com.mapzen.android:lost:3.0.3" + compile(rootProject.ext.dep.lost) { + exclude group: 'com.google.guava' + } // Picasso (Static Image) compile rootProject.ext.dep.picasso diff --git a/mapbox/libandroid-telemetry/build.gradle b/mapbox/libandroid-telemetry/build.gradle index 5017e7e91..cff55d64d 100644 --- a/mapbox/libandroid-telemetry/build.gradle +++ b/mapbox/libandroid-telemetry/build.gradle @@ -36,7 +36,9 @@ dependencies { provided rootProject.ext.dep.gmsLocation // LOST - provided "com.mapzen.android:lost:3.0.3" + provided(rootProject.ext.dep.lost) { + exclude group: 'com.google.guava' + } // Testing testCompile rootProject.ext.dep.junit diff --git a/mapbox/libandroid-telemetry/src/main/java/com/mapbox/services/android/telemetry/location/LostLocationEngine.java b/mapbox/libandroid-telemetry/src/main/java/com/mapbox/services/android/telemetry/location/LostLocationEngine.java index 3d1352797..bc8e3e2b6 100644 --- a/mapbox/libandroid-telemetry/src/main/java/com/mapbox/services/android/telemetry/location/LostLocationEngine.java +++ b/mapbox/libandroid-telemetry/src/main/java/com/mapbox/services/android/telemetry/location/LostLocationEngine.java @@ -3,7 +3,6 @@ import android.content.Context; import android.location.Location; import android.support.annotation.Nullable; -import android.util.Log; import com.mapzen.android.lost.api.LocationListener; import com.mapzen.android.lost.api.LocationRequest; @@ -15,10 +14,7 @@ /** * Sample LocationEngine using the Open Source Lost library */ -public class LostLocationEngine extends LocationEngine implements - LostApiClient.ConnectionCallbacks, LocationListener { - - private static final String LOG_TAG = LostLocationEngine.class.getSimpleName(); +public class LostLocationEngine extends LocationEngine implements LocationListener { private static LocationEngine instance; @@ -28,9 +24,7 @@ public class LostLocationEngine extends LocationEngine implements public LostLocationEngine(Context context) { super(); this.context = new WeakReference<>(context); - lostApiClient = new LostApiClient.Builder(this.context.get()) - .addConnectionCallbacks(this) - .build(); + lostApiClient = new LostApiClient.Builder(this.context.get()).build(); } public static synchronized LocationEngine getLocationEngine(Context context) { @@ -47,7 +41,12 @@ public static synchronized LocationEngine getLocationEngine(Context context) { */ @Override public void activate() { - connect(); + if (!lostApiClient.isConnected()) { + lostApiClient.connect(); + } + for (LocationEngineListener listener : locationListeners) { + listener.onConnected(); + } } /** @@ -57,7 +56,7 @@ public void activate() { */ @Override public void deactivate() { - if (lostApiClient != null && lostApiClient.isConnected()) { + if (lostApiClient.isConnected()) { lostApiClient.disconnect(); } } @@ -74,25 +73,7 @@ public boolean isConnected() { } /** - * Invoked when the location provider has connected. - */ - @Override - public void onConnected() { - for (LocationEngineListener listener : locationListeners) { - listener.onConnected(); - } - } - - /** - * Invoked when the location provider connection has been suspended. - */ - @Override - public void onConnectionSuspended() { - Log.d(LOG_TAG, "Connection suspended"); - } - - /** - * Returns the Last known location if the location provider is connected. + * Returns the Last known location if the location provider is connected and location permissions are granted. * * @return the last known location */ @@ -101,7 +82,7 @@ public void onConnectionSuspended() { public Location getLastLocation() { if (lostApiClient.isConnected()) { //noinspection MissingPermission - return LocationServices.FusedLocationApi.getLastLocation(lostApiClient); + return LocationServices.FusedLocationApi.getLastLocation(); } return null; } @@ -123,6 +104,7 @@ public void requestLocationUpdates() { request.setSmallestDisplacement(smallestDisplacement); } + // Priority matching is straightforward if (priority == LocationEnginePriority.NO_POWER) { request.setPriority(LocationRequest.PRIORITY_NO_POWER); } else if (priority == LocationEnginePriority.LOW_POWER) { @@ -135,44 +117,35 @@ public void requestLocationUpdates() { if (lostApiClient.isConnected()) { //noinspection MissingPermission - LocationServices.FusedLocationApi.requestLocationUpdates(lostApiClient, request, this); + LocationServices.FusedLocationApi.requestLocationUpdates(request, this); } } + @Override + public Type obtainType() { + return Type.LOST; + } + /** * Dismiss ongoing location update to the location provider. */ @Override public void removeLocationUpdates() { if (lostApiClient.isConnected()) { - LocationServices.FusedLocationApi.removeLocationUpdates(lostApiClient, this); + LocationServices.FusedLocationApi.removeLocationUpdates(this); } } - @Override - public Type obtainType() { - return Type.LOST; - } - /** * Invoked when the Location has changed. * * @param location the new location */ + @Deprecated @Override public void onLocationChanged(Location location) { for (LocationEngineListener listener : locationListeners) { listener.onLocationChanged(location); } } - - private void connect() { - if (lostApiClient != null) { - if (lostApiClient.isConnected()) { - onConnected(); - } else { - lostApiClient.connect(); - } - } - } } \ No newline at end of file From e739b719c9d4b9f74b32ce48fbece28707c17906 Mon Sep 17 00:00:00 2001 From: Cameron Mace Date: Sat, 7 Oct 2017 16:01:09 -0400 Subject: [PATCH 2/3] restored circle script to build from master --- circle.yml | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/circle.yml b/circle.yml index 1f91b73d7..bfb081cf4 100644 --- a/circle.yml +++ b/circle.yml @@ -110,13 +110,13 @@ jobs: - deploy: name: Publish Java Services To Maven Central command: | - if [ "${CIRCLE_BRANCH}" == "cam-fix-lost-update" ]; then + if [ "${CIRCLE_BRANCH}" == "master" ]; then make publish-java ; fi - deploy: name: Publish Android Services To Maven Central command: | - if [ "${CIRCLE_BRANCH}" == "cam-fix-lost-update" ]; then + if [ "${CIRCLE_BRANCH}" == "master" ]; then make publish-android ; fi - store_artifacts: From dcc2e512e782c84000e35b7ffe48d74132c3c09f Mon Sep 17 00:00:00 2001 From: Cameron Mace Date: Sat, 7 Oct 2017 16:02:57 -0400 Subject: [PATCH 3/3] removed deprecated tag --- .../com/mapbox/services/android/location/LostLocationEngine.java | 1 - .../services/android/telemetry/location/LostLocationEngine.java | 1 - 2 files changed, 2 deletions(-) diff --git a/mapbox/libandroid-services/src/main/java/com/mapbox/services/android/location/LostLocationEngine.java b/mapbox/libandroid-services/src/main/java/com/mapbox/services/android/location/LostLocationEngine.java index 7cc0116fd..ee0d39812 100644 --- a/mapbox/libandroid-services/src/main/java/com/mapbox/services/android/location/LostLocationEngine.java +++ b/mapbox/libandroid-services/src/main/java/com/mapbox/services/android/location/LostLocationEngine.java @@ -144,7 +144,6 @@ public void removeLocationUpdates() { * * @param location the new location */ - @Deprecated @Override public void onLocationChanged(Location location) { for (LocationEngineListener listener : locationListeners) { diff --git a/mapbox/libandroid-telemetry/src/main/java/com/mapbox/services/android/telemetry/location/LostLocationEngine.java b/mapbox/libandroid-telemetry/src/main/java/com/mapbox/services/android/telemetry/location/LostLocationEngine.java index bc8e3e2b6..e0026f2f8 100644 --- a/mapbox/libandroid-telemetry/src/main/java/com/mapbox/services/android/telemetry/location/LostLocationEngine.java +++ b/mapbox/libandroid-telemetry/src/main/java/com/mapbox/services/android/telemetry/location/LostLocationEngine.java @@ -141,7 +141,6 @@ public void removeLocationUpdates() { * * @param location the new location */ - @Deprecated @Override public void onLocationChanged(Location location) { for (LocationEngineListener listener : locationListeners) {