diff --git a/app/src/fdroid/java/fr.gouv.etalab.mastodon/activities/MainActivity.java b/app/src/fdroid/java/fr.gouv.etalab.mastodon/activities/MainActivity.java index 18516be2c..226b1e472 100644 --- a/app/src/fdroid/java/fr.gouv.etalab.mastodon/activities/MainActivity.java +++ b/app/src/fdroid/java/fr.gouv.etalab.mastodon/activities/MainActivity.java @@ -926,6 +926,7 @@ public class MainActivity extends AppCompatActivity SharedPreferences.Editor editor = sharedpreferences.edit(); String userId = sharedpreferences.getString(Helper.PREF_KEY_ID, null); editor.putBoolean(Helper.SHOULD_CONTINUE_STREAMING_FEDERATED+userId, false); + stopService(streamingIntent); editor.apply(); } if( receive_data != null) diff --git a/app/src/main/java/fr/gouv/etalab/mastodon/fragments/DisplayStatusFragment.java b/app/src/main/java/fr/gouv/etalab/mastodon/fragments/DisplayStatusFragment.java index 37227ca68..967532b2b 100644 --- a/app/src/main/java/fr/gouv/etalab/mastodon/fragments/DisplayStatusFragment.java +++ b/app/src/main/java/fr/gouv/etalab/mastodon/fragments/DisplayStatusFragment.java @@ -385,6 +385,7 @@ public class DisplayStatusFragment extends Fragment implements OnRetrieveFeedsIn public void onResume(){ super.onResume(); if( type == RetrieveFeedsAsyncTask.Type.PUBLIC){ + if( getUserVisibleHint() ){ SharedPreferences sharedpreferences = context.getSharedPreferences(Helper.APP_PREFS, Context.MODE_PRIVATE); SharedPreferences.Editor editor = sharedpreferences.edit(); @@ -452,6 +453,7 @@ public class DisplayStatusFragment extends Fragment implements OnRetrieveFeedsIn String userId = sharedpreferences.getString(Helper.PREF_KEY_ID, null); editor.putBoolean(Helper.SHOULD_CONTINUE_STREAMING_FEDERATED+userId, false); editor.apply(); + context.stopService(streamingFederatedIntent); } } } @@ -466,6 +468,7 @@ public class DisplayStatusFragment extends Fragment implements OnRetrieveFeedsIn String userId = sharedpreferences.getString(Helper.PREF_KEY_ID, null); editor.putBoolean(Helper.SHOULD_CONTINUE_STREAMING_FEDERATED+userId, false); editor.apply(); + context.stopService(streamingFederatedIntent); } } diff --git a/app/src/main/java/fr/gouv/etalab/mastodon/services/StreamingFederatedTimelineService.java b/app/src/main/java/fr/gouv/etalab/mastodon/services/StreamingFederatedTimelineService.java index abd7cfa7f..a934776a7 100644 --- a/app/src/main/java/fr/gouv/etalab/mastodon/services/StreamingFederatedTimelineService.java +++ b/app/src/main/java/fr/gouv/etalab/mastodon/services/StreamingFederatedTimelineService.java @@ -23,6 +23,7 @@ import android.os.Bundle; import android.os.SystemClock; import android.support.annotation.Nullable; import android.support.v4.content.LocalBroadcastManager; +import android.util.Log; import org.json.JSONException; diff --git a/app/src/main/java/fr/gouv/etalab/mastodon/services/StreamingService.java b/app/src/main/java/fr/gouv/etalab/mastodon/services/StreamingService.java index c85bc66a6..e2fede163 100644 --- a/app/src/main/java/fr/gouv/etalab/mastodon/services/StreamingService.java +++ b/app/src/main/java/fr/gouv/etalab/mastodon/services/StreamingService.java @@ -22,6 +22,7 @@ import android.os.Bundle; import android.os.SystemClock; import android.support.annotation.Nullable; import android.support.v4.content.LocalBroadcastManager; +import android.util.Log; import org.json.JSONException; @@ -118,7 +119,6 @@ public class StreamingService extends IntentService { String event; EventStreaming eventStreaming; while((event = reader.readLine()) != null) { - if( !sharedpreferences.getBoolean(Helper.SHOULD_CONTINUE_STREAMING + accountStream.getId(), true) ) stopSelf(); if ((lastEvent == EventStreaming.NONE || lastEvent == null) && !event.startsWith("data: ")) { diff --git a/app/src/safetynet/java/fr.gouv.etalab.mastodon/activities/MainActivity.java b/app/src/safetynet/java/fr.gouv.etalab.mastodon/activities/MainActivity.java index f28435d90..1cb8804d3 100644 --- a/app/src/safetynet/java/fr.gouv.etalab.mastodon/activities/MainActivity.java +++ b/app/src/safetynet/java/fr.gouv.etalab.mastodon/activities/MainActivity.java @@ -929,6 +929,7 @@ public class MainActivity extends AppCompatActivity SharedPreferences.Editor editor = sharedpreferences.edit(); String userId = sharedpreferences.getString(Helper.PREF_KEY_ID, null); editor.putBoolean(Helper.SHOULD_CONTINUE_STREAMING_FEDERATED+userId, false); + stopService(streamingIntent); editor.apply(); } if( receive_data != null)