分享抽象的视频,自动同步弹幕,打造Bilibili的抽象视频排行榜。
这是一个基于 Flutter 开发的 B站问号榜客户端,支持 Android、Windows、Linux 和 Web 平台。
iOS 因为开发者无 Mac,所以无法测试,暂不支持。
前往 Releases 下载
- Windows版解压后运行 bili_qml_app.exe
- 安卓版安装APK即可
- Web版可通过在线地址访问(暂无)
在开始之前,请确保您的开发环境已准备就绪:
- Flutter SDK: 3.10.0 或更高版本
- Dart SDK: 3.0.0 或更高版本
- IDE: VS Code (推荐) 或 Android Studio / IntelliJ IDEA
- Android: Android Studio, Android SDK, 配置好的 AVD 或真机
- Windows: Visual Studio 2022 (需要安装 "C++ 桌面开发" 工作负载)
- Linux: Clang, CMake, Ninja, pkg-config, GTK3 开发库
- iOS: macOS, Xcode, CocoaPods
- Web: Chrome 或其他现代浏览器
-
获取代码
git clone https://github.com/bili-qml-team/bili-qml-flutter.git cd bili-qml-flutter -
安装依赖
flutter pub get
flutter run -d windows首先安装必要的依赖:
# Ubuntu/Debian
sudo apt-get install clang cmake ninja-build pkg-config libgtk-3-dev liblzma-dev fonts-noto-cjk
# Fedora
sudo dnf install clang cmake ninja-build pkgconfig gtk3-devel xz-devel google-noto-sans-cjk-fonts
# Arch Linux
sudo pacman -S clang cmake ninja pkgconf gtk3 xz noto-fonts-cjk然后运行:
flutter run -d linux确保已连接设备或启动模拟器:
flutter run -d android确保已启动模拟器或连接 iOS 设备:
flutter run -d ios在浏览器中运行:
flutter run -d chrome构建发布版本:
flutter build windows --release构建产物位于:build/windows/runner/Release/
- 输出包含
bili_qml_app.exe和必要的.dll文件 data文件夹包含资源文件- 发布时需要打包这整个目录
构建 APK:
flutter build apk --release构建产物位于:build/app/outputs/flutter-apk/app-release.apk
构建 App Bundle (用于上传 Google Play):
flutter build appbundle --release注意: 正式发布前需要配置签名密钥。请参考 Android 签名文档。
确保已安装构建依赖(见上方开发运行部分),然后构建:
flutter build linux --release构建产物位于:build/linux/x64/release/bundle/
- 输出包含
bili_qml_app可执行文件和lib/目录 data文件夹包含资源文件- 发布时需要打包整个
bundle目录
注意: 用户运行时需要安装中文字体以确保中文正常显示:
# Ubuntu/Debian sudo apt-get install fonts-noto-cjk # Fedora sudo dnf install google-noto-sans-cjk-fonts # Arch Linux sudo pacman -S noto-fonts-cjk
构建 Web 版本:
flutter build web --release构建产物位于:build/web/
- 输出包含
index.html和必要的资源文件 - 可直接部署到任何静态网站托管服务(如 GitHub Pages、Vercel、Netlify 等)
注意: 部署时可能需要配置 CORS 代理以访问 B站 API。
构建 iOS 归档:
flutter build ios --release然后需要在 Xcode 中打开 ios/Runner.xcworkspace 进行归档 (Product -> Archive) 和发布。
注意: 需要有效的 Apple 开发者账号和证书配置。
- 检查是否安装了 Visual Studio 的 C++ 工作负载
- 运行
flutter doctor检查环境问题
- 尝试清理缓存:
flutter clean flutter pub get
- 由于应用需要访问 B站 API,请确保网络环境正常
- Android 模拟器可能需要配置代理
- 多榜单查看: 实时榜、日榜、周榜、月榜
- 视频详情: 清晰显示,支持跳转浏览器播放
- 交互投票: 悬浮按钮快速投票/取消
- 查找: 支持查找指定BV号的视频数据
- 设置自定义:
- 主题切换 (深色/浅色/跟随系统)
- 自定义 API 服务器
- 用户 UID 绑定
- 安全验证: 集成 Altcha 人机验证
如有问题,请提交 Issue 或检查日志输出。