v2.52 — Favoriten-Sync-Fix: bidirektionaler Merge (lokal↔Server), Toggle-Push sofort, cloud_id-Verdrahtung
This commit is contained in:
@@ -81,6 +81,21 @@ void main() async {
|
||||
// Auth initialisieren (Token aus SharedPreferences laden + online validieren)
|
||||
await AuthService().initialisieren();
|
||||
|
||||
// Favoriten-Toggle → Server-Push (Feuer-und-Vergessen, deterministisch via
|
||||
// `set` statt Toggle — verhindert Doppel-Toggle). Songs ohne cloud_id
|
||||
// (nicht hochgeladen) werden übersprungen; ein Fehlschlag wird beim
|
||||
// nächsten vollständigen Sync korrigiert (favoritenMerge-Vereinigung).
|
||||
FavoritenService().onStatusGeaendert = (songId, neuerStatus) async {
|
||||
try {
|
||||
final song = await DbHelper().songNachId(songId);
|
||||
final cid = song?.cloudId;
|
||||
if (cid == null || cid.isEmpty) return;
|
||||
await CloudService().setFavorite(cid, favorit: neuerStatus);
|
||||
} catch (e) {
|
||||
MeloLogger().fehler('favoriten_server_push', e);
|
||||
}
|
||||
};
|
||||
|
||||
// Android-Berechtigungen beim Start abfragen (Issue #4)
|
||||
// Speicherzugriff für Musik-Scan (READ_MEDIA_AUDIO / Storage)
|
||||
await MusikScanner().frageSpeicherZugriff();
|
||||
|
||||
Reference in New Issue
Block a user