diff --git a/.gitignore b/.gitignore
index 3820a95..06499a2 100644
--- a/.gitignore
+++ b/.gitignore
@@ -1,45 +1,36 @@
-# Miscellaneous
-*.class
-*.log
-*.pyc
-*.swp
-.DS_Store
-.atom/
-.build/
-.buildlog/
-.history
-.svn/
-.swiftpm/
-migrate_working_dir/
+# ============================================================
+# frpc-console .gitignore
+# ============================================================
-# IntelliJ related
-*.iml
-*.ipr
-*.iws
-.idea/
-
-# 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/
-
-# Flutter/Dart/Pub related
-**/doc/api/
-**/ios/Flutter/.last_build_id
-.dart_tool/
-.flutter-plugins-dependencies
-.pub-cache/
-.pub/
+# ---------- 构建产物 ----------
/build/
-/coverage/
+frpc-console
+frpc-console.exe
+*.exe
+*.test
-# Symbolication related
-app.*.symbols
+# ---------- 运行时生成 ----------
+*.db
+*.db-journal
+frpc.log
+frpc.pid
+frpc.toml
-# Obfuscation related
-app.*.map.json
+# ---------- IDE ----------
+.idea/
+.vscode/
+*.swp
+*.swo
+*~
+.dart_tool
+.idea
-# Android Studio will place build artifacts here
-/android/app/debug
-/android/app/profile
-/android/app/release
+# ---------- OS 垃圾 ----------
+.DS_Store
+Thumbs.db
+desktop.ini
+1.txt
+
+# ---------- 临时文件 ----------
+/tmp/
+*.tmp
\ No newline at end of file
diff --git a/android/app/build.gradle.kts b/android/app/build.gradle.kts
index a80e0b9..6d4c035 100644
--- a/android/app/build.gradle.kts
+++ b/android/app/build.gradle.kts
@@ -15,20 +15,20 @@ android {
}
defaultConfig {
- // TODO: Specify your own unique Application ID (https://developer.android.com/studio/build/application-id.html).
applicationId = "com.example.qt_player"
- // You can update the following values to match your application needs.
- // For more information, see: https://flutter.dev/to/review-gradle-config.
minSdk = flutter.minSdkVersion
targetSdk = flutter.targetSdkVersion
versionCode = flutter.versionCode
versionName = flutter.versionName
+
+ // ⬇️ 把 ndk 配置放在这里(defaultConfig 内部)
+ ndk {
+ abiFilters.addAll(listOf("armeabi-v7a", "arm64-v8a"))
+ }
}
buildTypes {
release {
- // TODO: Add your own signing config for the release build.
- // Signing with the debug keys for now, so `flutter run --release` works.
signingConfig = signingConfigs.getByName("debug")
}
}
diff --git a/android/qt_player_android.iml b/android/qt_player_android.iml
new file mode 100644
index 0000000..3bc4b3b
--- /dev/null
+++ b/android/qt_player_android.iml
@@ -0,0 +1,29 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/lib/pages/home_page.dart b/lib/pages/home_page.dart
index c9640c5..612a461 100644
--- a/lib/pages/home_page.dart
+++ b/lib/pages/home_page.dart
@@ -1,54 +1,253 @@
+// lib/pages/home_page.dart
import 'package:flutter/material.dart';
import 'package:provider/provider.dart';
import '../services/audio_service.dart';
import '../widgets/mini_player_bar.dart';
-import 'playlist_page.dart';
-import 'settings_page.dart';
-class HomePage extends StatefulWidget {
+class HomePage extends StatelessWidget {
const HomePage({super.key});
- @override
- State createState() => _HomePageState();
-}
-
-class _HomePageState extends State {
- int _currentIndex = 0;
- final List _pages = const [
- PlaylistPage(),
- SettingsPage(),
+ // 收藏数据(从你的 ASCII 图提取)
+ final List