-
Notifications
You must be signed in to change notification settings - Fork 13
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
- Loading branch information
0 parents
commit 096bf16
Showing
166 changed files
with
38,913 additions
and
0 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,71 @@ | ||
#Key stuff | ||
key.properties | ||
**/*.keystore | ||
**/*.jks | ||
android/key.properties | ||
|
||
android/local.properties | ||
|
||
scrobblenaut/.idea | ||
scrobblenaut/.dart_tool | ||
|
||
.gradle/ | ||
android/.gradle | ||
android/.idea | ||
|
||
.flutter-plugins | ||
.flutter-plugins-dependencies | ||
|
||
# Miscellaneous | ||
*.class | ||
*.log | ||
*.pyc | ||
*.swp | ||
.DS_Store | ||
.atom/ | ||
.buildlog/ | ||
.history | ||
.svn/ | ||
|
||
# IntelliJ related | ||
*.iml | ||
*.ipr | ||
*.iws | ||
.idea/ | ||
android/.idea/ | ||
android/local.properties | ||
|
||
# The .vscode folder contains launch configuration and tasks you configure in | ||
# VS Code which you may wish to be included in version control, so this line | ||
# is commented out by default. | ||
.vscode/ | ||
|
||
android/app/.cxx | ||
|
||
# Flutter/Dart/Pub related | ||
**/doc/api/ | ||
.dart_tool/ | ||
.flutter-plugins | ||
.flutter-plugins-dependencies | ||
.packages | ||
.pub-cache/ | ||
.pub/ | ||
/build/ | ||
coverage/ | ||
pubspec.lock | ||
|
||
# Web related | ||
lib/generated_plugin_registrant.dart | ||
|
||
# Symbolication related | ||
app.*.symbols | ||
|
||
# Obfuscation related | ||
app.*.map.json | ||
|
||
# Exceptions to above rules. | ||
!/packages/flutter_tools/test/data/dart_dependencies_test/**/.packages | ||
|
||
# Envied | ||
.env | ||
./lib/utils/env.g.dart |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,18 @@ | ||
[submodule "custom_navigator"] | ||
path = custom_navigator | ||
url = https://github.com/DJDoubleD/custom_navigator.git | ||
[submodule "equalizer_flutter"] | ||
path = equalizer_flutter | ||
url = https://github.com/DJDoubleD/equalizer_flutter.git | ||
[submodule "external_path"] | ||
path = external_path | ||
url = https://github.com/DJDoubleD/external_path.git | ||
[submodule "marquee"] | ||
path = marquee | ||
url = https://github.com/DJDoubleD/marquee.git | ||
[submodule "move_to_background"] | ||
path = move_to_background | ||
url = https://github.com/DJDoubleD/move_to_background.git | ||
[submodule "scrobblenaut"] | ||
path = scrobblenaut | ||
url = https://github.com/DJDoubleD/Scrobblenaut.git |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,45 @@ | ||
# This file tracks properties of this Flutter project. | ||
# Used by Flutter tool to assess capabilities and perform upgrades etc. | ||
# | ||
# This file should be version controlled. | ||
|
||
version: | ||
revision: 682aa387cfe4fbd71ccd5418b2c2a075729a1c66 | ||
channel: stable | ||
|
||
project_type: app | ||
|
||
# Tracks metadata for the flutter migrate command | ||
migration: | ||
platforms: | ||
- platform: root | ||
create_revision: 682aa387cfe4fbd71ccd5418b2c2a075729a1c66 | ||
base_revision: 682aa387cfe4fbd71ccd5418b2c2a075729a1c66 | ||
- platform: android | ||
create_revision: 682aa387cfe4fbd71ccd5418b2c2a075729a1c66 | ||
base_revision: 682aa387cfe4fbd71ccd5418b2c2a075729a1c66 | ||
- platform: ios | ||
create_revision: 682aa387cfe4fbd71ccd5418b2c2a075729a1c66 | ||
base_revision: 682aa387cfe4fbd71ccd5418b2c2a075729a1c66 | ||
- platform: linux | ||
create_revision: 682aa387cfe4fbd71ccd5418b2c2a075729a1c66 | ||
base_revision: 682aa387cfe4fbd71ccd5418b2c2a075729a1c66 | ||
- platform: macos | ||
create_revision: 682aa387cfe4fbd71ccd5418b2c2a075729a1c66 | ||
base_revision: 682aa387cfe4fbd71ccd5418b2c2a075729a1c66 | ||
- platform: web | ||
create_revision: 682aa387cfe4fbd71ccd5418b2c2a075729a1c66 | ||
base_revision: 682aa387cfe4fbd71ccd5418b2c2a075729a1c66 | ||
- platform: windows | ||
create_revision: 682aa387cfe4fbd71ccd5418b2c2a075729a1c66 | ||
base_revision: 682aa387cfe4fbd71ccd5418b2c2a075729a1c66 | ||
|
||
# User provided section | ||
|
||
# List of Local paths (relative to this file) that should be | ||
# ignored by the migrate tool. | ||
# | ||
# Files that are not part of the templates will be ignored by default. | ||
unmanaged_files: | ||
- 'lib/main.dart' | ||
- 'ios/Runner.xcodeproj/project.pbxproj' |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,72 @@ | ||
 | ||
|
||
[](../../releases/latest) | ||
[](../../releases/latest) | ||
[](../../releases) | ||
[](../../releases) | ||
[](https://dart.dev/) | ||
[](https://flutter.dev/) | ||
[](https://www.java.com/) | ||
|
||
--- | ||
|
||
<!--- # ReFreezer ---> | ||
|
||
An alternative Deezer music streaming & downloading client, based on Freezer. | ||
The entire codebase has been updated/rewritten to be compatible with the latest version of flutter, the dart SDK & android (current build target is API level 34). | ||
|
||
## Features & changes | ||
|
||
- Restored all features of the old Freezer app, most notably: | ||
- Restored all login options | ||
- Restored Highest quality streaming and download options (premium account required, free accounts limited to MP3 128kbps) | ||
- Support downloading to external storage (sdcard) for android 11 and up | ||
- Restored homescreen and added new Flow & Mood smart playlist options | ||
- Improved/fixed queue screen and queue handling (shuffle & rearranging) | ||
- Updated lyrics screen to also support unsynced lyrics | ||
- Some minor UI changes to better accomadate horizontal/tablet view | ||
- Updated entire codebase to fully support latest flutter & dart SDK versions | ||
- Updated to gradle version 8.7 | ||
- Removed included c libraries (openssl & opencrypto) and replaced them with custom native java implementation | ||
- Replaced the included decryptor-jni c library with a custom native java implementation | ||
- Implemented null-safety | ||
- Removed the need of custom just_audio & audio_service plugin versions & refactored source code to use the latest version of the official plugins | ||
- Multiple other fixes | ||
|
||
## Compile from source | ||
|
||
Install the latest flutter SDK: <https://flutter.dev/docs/get-started/install> | ||
(Optional) Generate keys for release build: <https://flutter.dev/docs/deployment/android> | ||
|
||
Download source: | ||
|
||
```powershell | ||
git clone https://github.com/DJDoubleD/ReFreezer | ||
git submodule init | ||
git submodule update | ||
``` | ||
|
||
Compile: | ||
|
||
```powershell | ||
flutter pub get | ||
dart run build_runner clean | ||
dart run build_runner build --delete-conflicting-outputs | ||
flutter build apk --split-per-abi --release | ||
``` | ||
|
||
NOTE: You have to use own keys, or build debug using `flutter build apk --debug` | ||
|
||
## Disclaimer & Legal | ||
|
||
**ReFreezer** was not developed for piracy, but educational and private usage. | ||
It may be illegal to use this in your country! | ||
I will not be responsible for how you use **ReFreezer**. | ||
|
||
**ReFreezer** uses both Deezer's public and internal API's, but is not endorsed, certified or otherwise approved in any way by Deezer. | ||
|
||
The Deezer brand and name is the registered trademark of its respective owner. | ||
|
||
**ReFreezer** has no partnership, sponsorship or endorsement with Deezer. | ||
|
||
By using **ReFreezer** you agree to the following: <https://www.deezer.com/legal/cgu> |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,46 @@ | ||
# This file configures the analyzer, which statically analyzes Dart code to | ||
# check for errors, warnings, and lints. | ||
# | ||
# The issues identified by the analyzer are surfaced in the UI of Dart-enabled | ||
# IDEs (https://dart.dev/tools#ides-and-editors). The analyzer can also be | ||
# invoked from the command line by running `flutter analyze`. | ||
|
||
# The following line activates a set of recommended lints for Flutter apps, | ||
# packages, and plugins designed to encourage good coding practices. | ||
include: package:flutter_lints/flutter.yaml | ||
|
||
linter: | ||
# The lint rules applied to this project can be customized in the | ||
# section below to disable rules from the `package:flutter_lints/flutter.yaml` | ||
# included above or to enable additional rules. A list of all available lints | ||
# and their documentation is published at | ||
# https://dart-lang.github.io/linter/lints/index.html. | ||
# | ||
# Instead of disabling a lint rule for the entire project in the | ||
# section below, it can also be suppressed for a single line of code | ||
# or a specific dart file by using the `// ignore: name_of_lint` and | ||
# `// ignore_for_file: name_of_lint` syntax on the line or in the file | ||
# producing the lint. | ||
rules: | ||
# avoid_print: false # Uncomment to disable the `avoid_print` rule | ||
prefer_single_quotes: true # Uncomment to enable the `prefer_single_quotes` rule | ||
constant_identifier_names: false | ||
library_private_types_in_public_api: false | ||
prefer_adjacent_string_concatenation: false | ||
prefer_collection_literals: false | ||
prefer_interpolation_to_compose_strings: false | ||
unnecessary_string_escapes: false | ||
|
||
# Additional information about this file can be found at | ||
# https://dart.dev/guides/language/analysis-options | ||
|
||
analyzer: | ||
exclude: | ||
- "**/*.g.dart" | ||
# workaround for https://github.com/dart-lang/sdk/issues/42910 | ||
- "Scrobblenaut/**" | ||
- "custom_navigator/**" | ||
- "equalizer_flutter/**" | ||
- "external_path/**" | ||
- "move_to_background/**" | ||
- "saf/**" |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,13 @@ | ||
gradle-wrapper.jar | ||
/.gradle | ||
/captures/ | ||
/gradlew | ||
/gradlew.bat | ||
/local.properties | ||
GeneratedPluginRegistrant.java | ||
|
||
# Remember to never publicly share your keystore. | ||
# See https://flutter.dev/docs/deployment/android#reference-the-keystore-from-the-app | ||
key.properties | ||
**/*.keystore | ||
**/*.jks |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,103 @@ | ||
plugins { | ||
id "com.android.application" | ||
id "kotlin-android" | ||
id "dev.flutter.flutter-gradle-plugin" | ||
} | ||
|
||
def localProperties = new Properties() | ||
def localPropertiesFile = rootProject.file('local.properties') | ||
if (localPropertiesFile.exists()) { | ||
localPropertiesFile.withReader('UTF-8') { reader -> | ||
localProperties.load(reader) | ||
} | ||
} | ||
|
||
def keystoreProperties = new Properties() | ||
def keystorePropertiesFile = rootProject.file('key.properties') | ||
if (keystorePropertiesFile.exists()) { | ||
keystoreProperties.load(new FileInputStream(keystorePropertiesFile)) | ||
} | ||
|
||
def flutterVersionCode = localProperties.getProperty('flutter.versionCode') | ||
if (flutterVersionCode == null) { | ||
flutterVersionCode = '1' | ||
} | ||
|
||
def flutterVersionName = localProperties.getProperty('flutter.versionName') | ||
if (flutterVersionName == null) { | ||
flutterVersionName = '1.0' | ||
} | ||
|
||
android { | ||
namespace 'r.r.refreezer' | ||
compileSdk 34 | ||
//ndkVersion flutter.ndkVersion | ||
ndkVersion "26.1.10909125" | ||
buildFeatures.buildConfig = true | ||
|
||
compileOptions { | ||
// Flag to enable support for the new language APIs | ||
coreLibraryDesugaringEnabled true | ||
// Sets Java compatibility to Java 8 | ||
sourceCompatibility JavaVersion.VERSION_1_8 | ||
targetCompatibility JavaVersion.VERSION_1_8 | ||
} | ||
|
||
kotlinOptions { | ||
jvmTarget = "1.8" | ||
} | ||
|
||
defaultConfig { | ||
// You can update the following values to match your application needs. | ||
// For more information, see: https://docs.flutter.dev/deployment/android#reviewing-the-gradle-build-configuration. | ||
applicationId "r.r.refreezer" | ||
minSdk 21 | ||
targetSdk 34 | ||
versionCode flutterVersionCode.toInteger() | ||
versionName flutterVersionName | ||
} | ||
|
||
signingConfigs { | ||
release { | ||
storeFile keystoreProperties['storeFile'] ? file(keystoreProperties['storeFile']) : null | ||
keyAlias keystoreProperties['keyAlias'] | ||
keyPassword keystoreProperties['keyPassword'] | ||
storePassword keystoreProperties['storePassword'] | ||
} | ||
} | ||
|
||
buildTypes { | ||
release { | ||
signingConfig signingConfigs.release | ||
shrinkResources false | ||
minifyEnabled false | ||
} | ||
debug { | ||
applicationIdSuffix '.debug' | ||
versionNameSuffix ' DEBUG' | ||
} | ||
} | ||
|
||
/*externalNativeBuild { | ||
ndkBuild { | ||
path file('src/main/jni/Android.mk') | ||
} | ||
}*/ | ||
lint { | ||
disable 'InvalidPackage' | ||
} | ||
} | ||
|
||
dependencies { | ||
implementation files('libs/extension-flac.aar') // Required for older Android version | ||
implementation("androidx.activity:activity-ktx:1.9.0") | ||
//implementation group: 'net.jthink', name: 'jaudiotagger', version: '3.0.1' // requires java 8 so no android 6 | ||
implementation group: 'net.jthink', name: 'jaudiotagger', version: '2.2.5' | ||
implementation group: 'org.nanohttpd', name: 'nanohttpd', version: '2.3.1' | ||
implementation 'androidx.documentfile:documentfile:1.0.1' | ||
coreLibraryDesugaring 'com.android.tools:desugar_jdk_libs:2.0.4' | ||
} | ||
|
||
flutter { | ||
source '../..' | ||
} |
Binary file not shown.
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,7 @@ | ||
<manifest xmlns:android="http://schemas.android.com/apk/res/android"> | ||
<!-- The INTERNET permission is required for development. Specifically, | ||
the Flutter tool needs it to communicate with the running application | ||
to allow setting breakpoints, to provide hot reload, etc. | ||
--> | ||
<uses-permission android:name="android.permission.INTERNET"/> | ||
</manifest> |
Oops, something went wrong.