Freezer를 기반으로 한 대체 Deezer 음악 스트리밍 및 다운로드 클라이언트입니다. 전체 코드베이스는 최신 버전의 flutter, dart SDK 및 android(현재 빌드 대상은 API 레벨 34)와 호환되도록 업데이트/다시 작성되었습니다.
특히 다음과 같은 이전 Freezer 앱의 모든 기능을 복원했습니다.
모든 로그인 옵션을 복원했습니다.
최고 품질의 스트리밍 및 다운로드 옵션 복원(프리미엄 계정 필요, 무료 계정은 MP3 128kbps로 제한됨)
Android 11 이상에서 외부 저장소(sdcard)로 다운로드 지원
홈 화면을 복원하고 새로운 Flow & Mood 스마트 재생 목록 옵션을 추가했습니다.
고정 로그아웃(더 이상 다시 시작할 필요 없음)
대기열 화면 및 대기열 처리 개선/수정(셔플 및 재배열)
동기화되지 않은 가사도 지원하도록 가사 화면을 업데이트했습니다.
가로/태블릿 보기를 더 잘 수용하기 위해 몇 가지 사소한 UI 변경
최신 Flutter 및 dart SDK 버전을 완벽하게 지원하도록 전체 코드베이스를 업데이트했습니다.
Gradle 버전 8.5.1로 업데이트되었습니다.
포함된 C 라이브러리(openssl 및 opencrypto)를 제거하고 이를 사용자 정의 기본 Java 구현으로 대체했습니다.
포함된 decryptor-jni c 라이브러리를 사용자 정의 기본 Java 구현으로 대체했습니다.
널 안전성 구현
최신 버전의 공식 플러그인을 사용하기 위해 사용자 정의 just_audio 및 audio_service 플러그인 버전 및 리팩터링된 소스 코드의 필요성을 제거했습니다.
기타 여러 가지 수정 사항
최신 Flutter SDK 설치: https://flutter.dev/docs/get-started/install
(선택 사항) 릴리스 빌드용 키 생성: https://flutter.dev/docs/deployment/android
다운로드 소스:
자식 클론 https://github.com/DJDoubleD/ReFreezer git 서브모듈 초기화 git 서브모듈 업데이트
프로젝트의 lib
폴더에 .env
파일을 만들고 다음 콘텐츠를 추가합니다.
# Deezer API credentials
deezerClientId = '';
deezerClientSecret = '';
# LastFM API credentials
lastFmApiKey = ''
lastFmApiSecret = 'Your_LastFM_API_Secret'
생성된 파일을 빌드합니다.
다음 스크립트를 사용하여 하위 모듈 및 기본 프로젝트에서 생성된 클래스를 (재)빌드합니다.
.run_build_runner.ps1
또는 관련 하위 모듈에서 다음 명령을 수동으로 실행하여 생성된 파일을 (재)빌드합니다.
플러터 펍 겟 dart run build_runner cleandart run build_runner build --delete-con conflicting-outputs
엮다:
flutter 빌드 apk --split-per-abi --release
참고: 자체 키를 사용하거나 flutter build apk --debug
사용하여 디버그를 빌드해야 합니다.
Java JDK 폴더가 PATH 변수에 있는지 확인하고 프로젝트의 ./android 폴더에서 다음 명령을 실행합니다.
keytool -genkey -v -keystore ./keys.jks -keyalg RSA -keysize 2048 -validity 10000 -alias
명령줄에 표시된 지침에 따라 키 저장소의 원하는 필드를 입력하세요.
./android(1단계의 key.jks 파일 옆) 내에서 다음 내용으로 key.properties
파일을 만듭니다.
storePassword=
keyPassword=
keyAlias=
storeFile=../keys.jks
ReFreezer는 불법 복제를 위해 개발된 것이 아니라 교육적이고 개인적인 용도로 개발되었습니다. 귀하의 국가에서 이것을 사용하는 것은 불법일 수 있습니다! 나는 귀하의 ReFreezer 사용에 대해 책임을 지지 않습니다.
ReFreezer는 Deezer의 공개 API와 내부 API를 모두 사용하지만 Deezer가 어떤 방식으로든 보증, 인증 또는 승인하지 않습니다.
Deezer 브랜드와 이름은 해당 소유자의 등록 상표입니다.
ReFreezer는 Deezer와 파트너십, 후원 또는 보증을 하지 않습니다.