Tried to mitigate the random crash on opening
This commit is contained in:
@@ -20,6 +20,7 @@ public class App extends Application {
|
|||||||
@Override
|
@Override
|
||||||
public void onCreate() {
|
public void onCreate() {
|
||||||
super.onCreate();
|
super.onCreate();
|
||||||
|
|
||||||
CrashReporter.initialize(this);
|
CrashReporter.initialize(this);
|
||||||
|
|
||||||
SharedPreferences sharedPreferences = PreferenceManager.getDefaultSharedPreferences(getApplicationContext());
|
SharedPreferences sharedPreferences = PreferenceManager.getDefaultSharedPreferences(getApplicationContext());
|
||||||
|
|||||||
@@ -237,23 +237,27 @@ public class MusicService extends Service implements Playback.PlaybackCallbacks
|
|||||||
}
|
}
|
||||||
|
|
||||||
private void restoreState() {
|
private void restoreState() {
|
||||||
QueueRepository queueRepository = new QueueRepository(App.getInstance());
|
try {
|
||||||
List<Song> restoredQueue = queueRepository.getSongs();
|
QueueRepository queueRepository = new QueueRepository(App.getInstance());
|
||||||
|
List<Song> restoredQueue = queueRepository.getSongs();
|
||||||
|
|
||||||
int restoredPosition = PreferenceUtil.getInstance(getApplicationContext()).getPosition();
|
int restoredPosition = PreferenceUtil.getInstance(getApplicationContext()).getPosition();
|
||||||
int restoredPositionInTrack = PreferenceUtil.getInstance(getApplicationContext()).getProgress();
|
int restoredPositionInTrack = PreferenceUtil.getInstance(getApplicationContext()).getProgress();
|
||||||
|
|
||||||
if (restoredQueue.size() > 0 && restoredPosition != -1) {
|
if (restoredQueue.size() > 0 && restoredPosition != -1) {
|
||||||
this.playingQueue = restoredQueue;
|
this.playingQueue = restoredQueue;
|
||||||
|
|
||||||
position = restoredPosition;
|
position = restoredPosition;
|
||||||
openCurrent();
|
openCurrent();
|
||||||
|
|
||||||
if (restoredPositionInTrack > 0) seek(restoredPositionInTrack);
|
if (restoredPositionInTrack > 0) seek(restoredPositionInTrack);
|
||||||
|
|
||||||
notHandledMetaChangedForCurrentTrack = true;
|
notHandledMetaChangedForCurrentTrack = true;
|
||||||
handleChangeInternal(META_CHANGED);
|
handleChangeInternal(META_CHANGED);
|
||||||
handleChangeInternal(QUEUE_CHANGED);
|
handleChangeInternal(QUEUE_CHANGED);
|
||||||
|
}
|
||||||
|
} catch (Exception e) {
|
||||||
|
e.printStackTrace();
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user