mirror of
https://github.com/CappielloAntonio/tempo.git
synced 2026-01-31 06:42:06 +00:00
Reset user/music/db sessions on logout
This commit is contained in:
@@ -21,6 +21,25 @@ import java.util.concurrent.ExecutionException;
|
||||
public class MediaManager {
|
||||
private static final String TAG = "MediaManager";
|
||||
|
||||
public static void reset(ListenableFuture<MediaBrowser> mediaBrowserListenableFuture) {
|
||||
if (mediaBrowserListenableFuture != null) {
|
||||
mediaBrowserListenableFuture.addListener(() -> {
|
||||
try {
|
||||
if (mediaBrowserListenableFuture.isDone()) {
|
||||
if (mediaBrowserListenableFuture.get().isPlaying()) {
|
||||
mediaBrowserListenableFuture.get().pause();
|
||||
mediaBrowserListenableFuture.get().stop();
|
||||
mediaBrowserListenableFuture.get().clearMediaItems();
|
||||
clearDatabase();
|
||||
}
|
||||
}
|
||||
} catch (ExecutionException | InterruptedException e) {
|
||||
Log.e(TAG, e.getMessage());
|
||||
}
|
||||
}, MoreExecutors.directExecutor());
|
||||
}
|
||||
}
|
||||
|
||||
public static void quit(ListenableFuture<MediaBrowser> mediaBrowserListenableFuture) {
|
||||
if (mediaBrowserListenableFuture != null) {
|
||||
mediaBrowserListenableFuture.addListener(() -> {
|
||||
@@ -306,4 +325,8 @@ public class MediaManager {
|
||||
getQueueRepository().insertAll(songs, true, 0);
|
||||
}
|
||||
}
|
||||
|
||||
public static void clearDatabase() {
|
||||
getQueueRepository().deleteAll();
|
||||
}
|
||||
}
|
||||
|
||||
@@ -266,7 +266,7 @@ public class MainActivity extends BaseActivity {
|
||||
}
|
||||
|
||||
private void resetMusicSession() {
|
||||
MediaManager.quit(getMediaBrowserListenableFuture());
|
||||
MediaManager.reset(getMediaBrowserListenableFuture());
|
||||
}
|
||||
|
||||
private void resetViewModel() {
|
||||
|
||||
Reference in New Issue
Block a user