Ein alternativer Musik-Streaming- und Download-Client von Deezer, basierend auf Freezer. Die gesamte Codebasis wurde aktualisiert/neu geschrieben, um mit der neuesten Version von Flutter, dem Dart SDK und Android kompatibel zu sein (aktuelles Build-Ziel ist API-Level 34).
Alle Funktionen der alten Freezer-App wurden wiederhergestellt, insbesondere:
Alle Anmeldeoptionen wiederhergestellt
Wiederhergestellte Streaming- und Download-Optionen in höchster Qualität (Premium-Konto erforderlich, kostenlose Konten auf MP3 mit 128 KBit/s beschränkt)
Unterstützt das Herunterladen auf einen externen Speicher (SD-Karte) für Android 11 und höher
Der Startbildschirm wurde wiederhergestellt und neue Optionen für die intelligente Wiedergabeliste „Flow & Mood“ hinzugefügt
Problem beim Abmelden behoben (kein Neustart mehr erforderlich)
Verbesserter/korrigierter Warteschlangenbildschirm und Warteschlangenverwaltung (Mischen und Neuanordnen)
Aktualisierter Textbildschirm, um auch nicht synchronisierte Liedtexte zu unterstützen
Einige kleinere Änderungen an der Benutzeroberfläche, um die horizontale/Tablet-Ansicht besser zu ermöglichen
Die gesamte Codebasis wurde aktualisiert, um die neuesten Flutter- und Dart-SDK-Versionen vollständig zu unterstützen
Aktualisiert auf Gradle-Version 8.5.1
Enthaltene C-Bibliotheken (openssl und opencrypto) entfernt und durch eine benutzerdefinierte native Java-Implementierung ersetzt
Die enthaltene Decryptor-JNI-C-Bibliothek wurde durch eine benutzerdefinierte native Java-Implementierung ersetzt
Nullsicherheit implementiert
Die Notwendigkeit benutzerdefinierter just_audio- und audio_service-Plugin-Versionen wurde entfernt und der Quellcode wurde überarbeitet, um die neueste Version der offiziellen Plugins zu verwenden
Mehrere andere Korrekturen
Installieren Sie das neueste Flatter-SDK: https://flutter.dev/docs/get-started/install
(Optional) Schlüssel für den Release-Build generieren: https://flutter.dev/docs/deployment/android
Quelle herunterladen:
Git-Klon https://github.com/DJDoubleD/ReFreezer Git-Submodul-Init Git-Submodul-Update
Erstellen Sie eine .env
Datei im lib
Ordner des Projekts und fügen Sie den folgenden Inhalt hinzu:
# Deezer API credentials
deezerClientId = '';
deezerClientSecret = '';
# LastFM API credentials
lastFmApiKey = ''
lastFmApiSecret = 'Your_LastFM_API_Secret'
Generierte Dateien erstellen:
Verwenden Sie das folgende Skript, um generierte Klassen in Untermodulen und im Hauptprojekt (neu) zu erstellen:
.run_build_runner.ps1
oder führen Sie diese Befehle manuell in den entsprechenden Submodulen aus, um die generierten Dateien (neu) zu erstellen:
Flatterkneipe bekommen dart run build_runner cleandart run build_runner build --delete-conflicting-outputs
Kompilieren:
flutter build apk --split-per-abi --release
HINWEIS: Sie müssen eigene Schlüssel verwenden oder das Debug mit flutter build apk --debug
erstellen
Stellen Sie sicher, dass sich Ihr Java-JDK-Ordner in Ihrer PATH-Variablen befindet, und führen Sie den folgenden Befehl im ./android-Ordner des Projekts aus:
keytool -genkey -v -keystore ./keys.jks -keyalg RSA -keysize 2048 -validity 10000 -alias
Befolgen Sie die Anweisungen in der Befehlszeile, um die gewünschten Felder Ihres Schlüsselspeichers auszufüllen.
Erstellen Sie in ./android (neben der Datei „keys.jks“ aus Schritt 1) eine Datei key.properties
mit folgendem Inhalt:
storePassword=
keyPassword=
keyAlias=
storeFile=../keys.jks
ReFreezer wurde nicht für Piraterie entwickelt, sondern für den Bildungs- und Privatgebrauch. Es könnte in Ihrem Land illegal sein, dies zu verwenden! Ich übernehme keine Verantwortung dafür, wie Sie ReFreezer verwenden.
ReFreezer nutzt sowohl die öffentlichen als auch die internen APIs von Deezer, wird jedoch von Deezer in keiner Weise unterstützt, zertifiziert oder anderweitig genehmigt.
Die Marke und der Name Deezer sind eingetragene Marken des jeweiligen Eigentümers.
ReFreezer hat keine Partnerschaft, Sponsoring oder Unterstützung mit Deezer.