嗨,大家好,我是小华同学,关注我们获得“最新、最全、最优质”开源项目和高效工作学习方法
PiliPala 是一个使用 Flutter 开发的 BiliBili 第三方客户端,旨在为用户提供更加流畅和个性化的使用体验。该项目由 guozhigq 开发,目前主要支持移动端(Android 和 iOS),暂未适配桌面端、Pad 端和手表端。PiliPala 的设计初衷是为了满足用户对 BiliBili 客户端的更高需求,提供更加丰富的功能和更好的性能。
核心功能
PiliPala 提供了丰富的功能,涵盖了用户在使用 BiliBili 时的多种需求。以下是其主要功能:
视频浏览与推荐
- 推荐视频列表:根据用户的兴趣和观看历史,推荐个性化的视频内容。
- 最热视频列表:展示当前最热门的视频,让用户第一时间了解平台上的热门动态。
- 热门直播:提供热门直播内容,让用户不错过任何精彩直播。
- 番剧列表:整合丰富的番剧资源,方便用户追番。
用户互动
- 用户相关:
- 查看粉丝、关注用户和拉黑用户。
- 查看用户主页,关注或取关用户。
- 离线缓存、稍后再看、观看记录和我的收藏。
- 黑名单管理,屏蔽不想要的用户视频。
- 动态相关:
- 全部、投稿、番剧分类查看动态。
- 查看动态评论,回复动态评论。
- 动态未读标记,方便用户跟踪未读动态。
视频播放
- 手势操作:
- 双击快进/快退,双击播放/暂停。
- 垂直方向调节亮度/音量,水平方向手势快进/快退。
- 垂直方向上滑全屏、下滑退出全屏。
- 播放设置:
- 全屏方向设置,倍速选择/长按 2 倍速。
- 硬件加速(视机型而定),画质选择(高清画质未解锁)。
- 音质选择(视视频而定),解码格式选择(视视频而定)。
- 弹幕与字幕:
- 支持弹幕显示,用户可以在观看视频时发送和查看弹幕。
- 支持字幕显示,方便用户观看外语或听力障碍视频。
- 记忆播放:
- 记忆播放功能,用户可以断点续播,继续上次的观看进度。
- 视频比例:
- 提供多种视频比例选择,包括高度/宽度适应、填充、包含等,满足不同用户的观看需求。
搜索功能
- 热搜:展示当前热门搜索关键词,帮助用户发现热门内容。
- 搜索历史:记录用户的搜索历史,方便用户快速查找之前搜索过的内容。
- 默认搜索词:提供默认搜索词,帮助用户快速开始搜索。
- 多维度搜索:
- 投稿、番剧、直播间、用户搜索,满足用户在不同维度上的搜索需求。
- 视频搜索排序、按时长筛选,帮助用户更精准地找到所需内容。
视频详情页
- 视频选集:支持分 P 视频的选集切换,方便用户观看系列视频。
- 互动操作:
- 点赞、投币、收藏/取消收藏,用户可以对喜欢的视频进行互动。
- 查看相关视频,发现更多感兴趣的内容。
- 评论功能:
- 评论用户身份标识,帮助用户了解评论者的身份。
- 评论(排序)查看、二楼评论查看,用户可以查看和参与视频评论。
- 主楼、二楼评论/表情回复功能,评论点赞,增强用户互动体验。
- 评论笔记图片查看、保存,方便用户参考和使用评论中的图片。
设置与个性化
- 预设设置:
- 画质、音质、解码方式预设,用户可以根据自己的喜好和设备性能进行设置。
- 图片质量设定,优化图片加载速度和质量。
- 主题模式:
- 亮色/暗色/跟随系统,用户可以根据自己的使用习惯选择主题模式。
- 其他设置:
- 震动反馈(可选),高帧率,自动全屏,提升用户的使用体验。
技术架构
PiliPala 基于 Flutter 框架开发,利用了 Flutter 的跨平台优势,实现了 Android 和 iOS 的统一代码库。以下是其主要技术栈:
- Flutter:跨平台移动应用开发框架,提供丰富的组件和高效的性能。
- Dio:Flutter 的 HTTP 请求库,用于处理网络请求。
- Media Kit:用于处理视频播放和媒体控制。
- Flutter Meedu VideoPlayer:用于实现视频播放功能,提供丰富的播放控制和设置选项。
- Bilibili-API-Collect:收集和整合 BiliBili 的 API,用于获取视频数据和用户信息。
项目效果
与同类项目对比情况及我的优势
与官方客户端对比
- 功能丰富度:PiliPala 提供了更多个性化和高级功能,如视频播放的手势操作、多种播放设置、详细的搜索功能等,而官方客户端的功能相对较为基础。
- 性能优化:PiliPala 利用 Flutter 的高性能和优化的视频播放库,提供了更加流畅的视频播放体验,尤其是在低性能设备上表现更为突出。
- 界面美观:PiliPala 的界面设计更加美观和现代化,提供了更好的视觉体验,而官方客户端的界面相对较为传统。
与同类第三方客户端对比
- 功能完整性:PiliPala 提供了全面的功能,涵盖了用户在使用 BiliBili 时的多种需求,而其他同类第三方客户端的功能可能较为单一。
- 技术先进性:PiliPala 基于 Flutter 开发,具有良好的跨平台兼容性和高性能,而其他同类客户端可能使用其他技术栈,兼容性和性能可能不如 PiliPala。
- 社区支持:PiliPala 有活跃的社区支持,开发者积极维护和更新项目,用户可以通过 Telegram 和 QQ 频道与其他用户和技术支持人员交流,而其他同类客户端的社区支持可能较为薄弱。
项目地址
https://github.com/guozhigq/pilipala