fix(startup): keep shared backend alive across activity recreation

This commit is contained in:
zarzet committed 2026-09-30 20:58:36 +07:00
1 parent fb08110797
commit cda9868a1f
2 files changed
+4 -6

No files matched your search

@@ -946,11 +946,9 @@ class MainActivity: FlutterFragmentActivity() {
} catch (_: Exception) {}
}
libraryStorageReceiver = null
try {
coreBackend.cleanupExtensions()
} catch (e: Exception) {
android.util.Log.w("SpotiFLAC", "Failed to cleanup extensions on destroy: ${e.message}")
}
// The backend belongs to the process/shared Flutter engine and download
// service. Activity recreation must not shut it down (or wait for its
// active scans/downloads on the UI thread).
stopDownloadProgressStream()
stopLibraryScanProgressStream()
closeAllSafPlaybackLeases()
+1 -1
View File
@@ -243,7 +243,7 @@ Future<bool> _detectInitialSafAccessLoss(AppSettings settings) async {
try {
return !await PlatformBridge.validateSafTreeAccess(
settings.downloadTreeUri,
);
).timeout(const Duration(seconds: 2));
} catch (e) {
// A transient bridge failure must not trap the user at launch. Download
// preflight validates strictly again before any write starts.