diff --git a/src/main/java/com/marianhello/bgloc/provider/ActivityRecognitionLocationProvider.java b/src/main/java/com/marianhello/bgloc/provider/ActivityRecognitionLocationProvider.java index bfb21998..c9fd2bd2 100644 --- a/src/main/java/com/marianhello/bgloc/provider/ActivityRecognitionLocationProvider.java +++ b/src/main/java/com/marianhello/bgloc/provider/ActivityRecognitionLocationProvider.java @@ -84,12 +84,18 @@ public boolean isStarted() { @Override public void onLocationChanged(Location location) { + logger.debug("Location change: {}", location.toString()); if (lastActivity.getType() == DetectedActivity.STILL) { - handleStationary(location); + + handleStationary(location); + + if (mConfig.getStopOnStillActivity()) { stopTracking(); - return; + } + + return; } showDebugToast("acy:" + location.getAccuracy() + ",v:" + location.getSpeed()); @@ -147,14 +153,14 @@ private void attachRecorder() { } else if (googleApiClient.isConnected()) { if (isWatchingActivity) { return; } startTracking(); - if (mConfig.getStopOnStillActivity()) { - ActivityRecognition.ActivityRecognitionApi.requestActivityUpdates( - googleApiClient, - mConfig.getActivitiesInterval(), - detectedActivitiesPI - ); - isWatchingActivity = true; - } + + ActivityRecognition.ActivityRecognitionApi.requestActivityUpdates( + googleApiClient, + mConfig.getActivitiesInterval(), + detectedActivitiesPI + ); + isWatchingActivity = true; + } else { googleApiClient.connect(); }