Equalizer-Fix für Xiaomi/MIUI (Dolby Atmos) + In-App-YouTube-Suche als Extra-Tab
- openSystemPanel(): Xiaomi-Sound-Settings-Intent zuerst, dann Settings.ACTION_SOUND_SETTINGS, dann Android-Standard-Intent als Fallback. Behebt "kein System-Klangeffekte" trotz Dolby Atmos auf MIUI/HyperOS (POCO X7 Pro), wo der Standard-Intent keine Activity findet. - Neuer Tab "YT-Suche": YouTube-Suche über den bestehenden /api/search-Endpunkt des Baka-Proxys, Ergebnisliste mit Thumbnail (YouTube-CDN), Titel, Dauer und Download-Knopf pro Treffer — derselbe Download-Weg wie im bestehenden Download-Tab. 574 Tests grün, flutter analyze ohne Befund, Kotlin kompiliert sauber (gradlew :app:compileDebugKotlin). Xiaomi-Fix konnte nicht auf echter Hardware getestet werden. Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01VM2JK5mV7AL1g2Rt6H6h9w
This commit is contained in:
co-authored by
Claude Sonnet 5
parent
9e65ddcbb5
commit
f0313724d4
@@ -14,6 +14,7 @@ import 'package:melo/services/navidrome_service.dart';
|
||||
import 'package:melo/services/offline_mode.dart';
|
||||
import 'package:melo/services/sync_service.dart';
|
||||
import 'package:melo/services/yt_download_service.dart';
|
||||
import 'package:melo/services/yt_search_service.dart';
|
||||
import 'package:melo/settings/app_settings.dart';
|
||||
import 'package:melo/shared/theme.dart';
|
||||
import 'package:provider/provider.dart';
|
||||
@@ -29,8 +30,14 @@ class _MemorySpeicher implements TokenSpeicher {
|
||||
Future<void> loeschen(String key) async => werte.remove(key);
|
||||
}
|
||||
|
||||
/// Die vier Bereiche des Hauptmenüs, in dieser Reihenfolge.
|
||||
const hauptmenue = ['Meine Musik', 'Suchen', 'Download', 'Favoriten'];
|
||||
/// Die fünf Bereiche des Hauptmenüs, in dieser Reihenfolge.
|
||||
const hauptmenue = [
|
||||
'Meine Musik',
|
||||
'Suchen',
|
||||
'Download',
|
||||
'Favoriten',
|
||||
'YT-Suche'
|
||||
];
|
||||
|
||||
void main() {
|
||||
late MeloDb db;
|
||||
@@ -41,6 +48,7 @@ void main() {
|
||||
late AppSettings einstellungen;
|
||||
late OfflineMode offline;
|
||||
late YtDownloadService ytDownload;
|
||||
late YtSearchService ytSearch;
|
||||
late DownloadService downloads;
|
||||
late SyncService sync;
|
||||
MeloAudioHandler? handler;
|
||||
@@ -55,6 +63,7 @@ void main() {
|
||||
einstellungen = AppSettings();
|
||||
offline = OfflineMode();
|
||||
ytDownload = YtDownloadService(auth: auth);
|
||||
ytSearch = YtSearchService(auth: auth);
|
||||
downloads = DownloadService(db: db, navidrome: NavidromeService());
|
||||
sync = SyncService(db: db, cloud: MeloCloudService(auth: auth));
|
||||
});
|
||||
@@ -87,6 +96,7 @@ void main() {
|
||||
ChangeNotifierProvider<OfflineMode>.value(value: offline),
|
||||
ChangeNotifierProvider<BakaAuth>.value(value: auth),
|
||||
ChangeNotifierProvider<YtDownloadService>.value(value: ytDownload),
|
||||
ChangeNotifierProvider<YtSearchService>.value(value: ytSearch),
|
||||
ChangeNotifierProvider<DownloadService>.value(value: downloads),
|
||||
ChangeNotifierProvider<SyncService>.value(value: sync),
|
||||
],
|
||||
|
||||
Reference in New Issue
Block a user