# flymby **Repository Path**: fbinba3955/flymby ## Basic Information - **Project Name**: flymby - **Description**: Flymby 是一款基于鸿蒙系统(HarmonyOS)开发的媒体服务应用。它允许用户连接、管理和访问 Emby服务器 ,提供流媒体播放和内容管理功能。 - **Primary Language**: TypeScript - **License**: MIT - **Default Branch**: master - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 6 - **Forks**: 2 - **Created**: 2024-07-25 - **Last Updated**: 2025-07-17 ## Categories & Tags **Categories**: Uncategorized **Tags**: 鸿蒙next, emby ## README # Flymby ## 项目概述 Flymby 是一款基于鸿蒙系统(HarmonyOS)开发的多媒体服务器客户端应用。它主要为用户提供 Emby 媒体服务器的完整连接、管理和内容播放功能,为用户提供统一的媒体播放体验。 ## 应用截图
主页 媒体库 影片详情 播放
主页 媒体库 影片详情 播放
## 主要功能 ### 核心功能 - **多服务器支持**: 连接和管理多个媒体服务器 - **媒体播放**: 支持音频和视频内容的流媒体播放 - **播放记录**: 支持播放进度记录和断点续播 - **字幕支持**: 支持多格式字幕文件 - **收藏管理**: 管理和访问您收藏的媒体内容 - **搜索功能**: 快速查找媒体内容 - **自适应布局**: 支持手机、平板和二合一设备的横竖屏布局 ### 支持的服务器类型 - **Emby 服务器**: 完整功能支持,包括用户认证、媒体管理、播放控制等 ### 播放器功能 - **多播放器引擎**: 集成 SmartXPlayer 和 wlmedia 播放引擎 - **播放控制**: 支持播放/暂停、进度控制、音量调节 - **字幕控制**: 支持字幕开关、字幕选择 - **播放队列**: 支持播放列表管理 ### 个性化设置 - **主题模式**: 支持明暗主题切换 - **播放设置**: 自定义播放器相关配置 - **显示设置**: 调整应用界面显示选项 - **隐私保护**: 严格遵守隐私保护规范 ## 技术构成 ### 开发环境 - **开发语言**: ArkTS (ExtendedTypeScript) - **UI框架**: ArkUI - **目标平台**: HarmonyOS - **兼容版本**: HarmonyOS 5.0.4(16) 及以上 - **支持设备**: 手机、平板、二合一设备 ### 核心依赖 - **@ohos/pulltorefresh**: 下拉刷新组件 - **@hzw/zrouter**: 路由管理(未使用) - **@pura/harmony-utils**: 工具库 - **@pura/harmony-dialog**: 对话框组件 - **@qtfm/smartxplayer**: 音频播放器模块(未使用) - **libwlmedia**: WL媒体播放库 ### 模块架构 - **main**: 主应用模块 - **common**: 通用组件和工具模块 - **smartxplayer**: 播放器核心模块 ## 安装要求 - **系统要求**: HarmonyOS 5.0.4(16) 及以上版本 - **设备支持**: 手机、平板、二合一设备 - **网络权限**: 需要互联网访问权限 - **服务器要求**: - Emby 媒体服务器 (版本 4.0 及以上) ## 项目结构 ``` flymby/ ├── AppScope/ # 应用级配置 │ ├── app.json5 # 应用配置文件 │ └── resources/ # 应用级资源 ├── main/ # 主模块 │ ├── src/main/ │ │ ├── ets/ │ │ │ ├── api/ # API接口层 │ │ │ │ ├── emby/ # Emby API封装 │ │ │ │ ├── HttpConfig.ets │ │ │ │ └── HttpRequest.ets │ │ │ ├── constants/ # 常量定义 │ │ │ ├── controller/ # 控制器 │ │ │ ├── mainability/ # 主能力 │ │ │ ├── pages/ # 页面组件 │ │ │ │ ├── Index.ets # 主页面 │ │ │ │ ├── home/ # 首页相关页面 │ │ │ │ ├── player/ # 播放器页面 │ │ │ │ ├── search/ # 搜索功能 │ │ │ │ ├── setting/ # 设置页面 │ │ │ │ ├── add-server/ # 添加服务器 │ │ │ │ ├── collection/ # 收藏管理 │ │ │ │ └── webview/ # Web视图 │ │ │ ├── styles/ # 样式定义 │ │ │ ├── utils/ # 工具类 │ │ │ ├── view/ # 视图组件 │ │ │ └── viewmodel/ # 视图模型 │ │ ├── module.json5 # 模块配置 │ │ └── resources/ # 资源文件 │ └── ... ├── common/ # 通用模块 │ ├── src/main/ │ │ ├── ets/ │ │ │ ├── components/ # 通用组件 │ │ │ ├── constants/ # 通用常量 │ │ │ ├── model/ # 数据模型 │ │ │ ├── utils/ # 通用工具 │ │ │ └── video/ # 视频相关功能 │ │ └── ... ├── smartxplayer/ # 播放器模块 │ ├── src/main/ │ │ ├── ets/ │ │ │ ├── helper/ # 播放器辅助类 │ │ │ ├── worker/ # 播放器工作线程 │ │ │ └── ... │ │ └── ... ├── lib/ # 第三方库 │ └── libwlmedia.har # wlmedia播放库 ├── hmKey/ # 签名证书 ├── build-profile.json5 # 构建配置 └── hvigorfile.ts # 构建脚本 ``` ## 使用说明 ### 首次使用 1. 启动应用后,阅读并同意隐私政策 2. 添加您的媒体服务器 ### 添加 Emby 服务器 1. 进入"服务"标签页 2. 点击右上角"+"按钮 3. 选择 Emby 服务器类型 4. 输入服务器信息: - 服务器名称(用于区分) - 服务器地址 - 端口号(默认8096) - 用户名和密码 - 是否使用HTTPS 5. 测试连接并保存 ### 浏览和播放内容 1. 在首页浏览媒体内容 2. 支持按以下方式浏览: - 分类浏览 - 最新更新 - 播放记录 - 收藏内容 3. 点击内容项目查看详情或开始播放 4. 使用内置播放器控制播放 ### 播放功能 - **基本控制**: 播放/暂停、进度调节、音量控制 - **字幕功能**: 字幕开关、字幕选择 - **播放记录**: 自动记录播放进度,支持断点续播 - **播放模式**: 支持单曲循环、列表播放等模式 ### 设置选项 - **显示设置**: 明暗主题切换 - **播放设置**: 播放器相关配置 - **服务器管理**: 添加、修改、删除服务器 ## 支持的媒体格式 ### 视频格式 - MP4, MKV - H.264, H.265/HEVC 编码 - 支持多种分辨率(720p, 1080p, 4K) ### 字幕格式 - SRT, ASS, SSA, VTT - 支持多语言字幕 ## 开发与构建 ### 开发环境要求 - DevEco Studio 5.0 及以上 - HarmonyOS SDK 5.0.4(16) 及以上 - Node.js 环境 ### 构建命令 使用DevEco-Studio构建 ## 隐私政策 Flymby 重视用户隐私保护,严格遵守相关法律法规,保护用户个人信息安全。 - **数据收集**: 仅收集必要的功能数据 - **数据使用**: 仅用于提供服务功能 - **数据安全**: 采用加密存储和传输 - **联系方式**: freedomnanjing@gmail.com ## 开发者 **ShiJianting** ## 沟通交流 **QQ群:442125481** **Telegram讨论组: [FlymbyChat](https://t.me/flymby_chat)** ## 特别鸣谢 - [wlmedia](https://github.com/ywl5320/wlmedia) - 赞助本项目的播放器功能 - HarmonyOS社区 - 所有贡献者和测试用户 ## 许可证 请参考 LICENSE 文件了解项目许可证信息。 ## 联系我们 如有问题或建议,请通过以下方式联系: - 邮箱:freedomnanjing@gmail.com - 项目地址:本仓库 Issues 页面