RishBiliCacheMerge 是一个专业的Bilibili Android客户端缓存视频合并工具,特别针对Android 13及以上系统对/sdcard/Android/data目录的访问限制而设计。通过结合Shizuku的Rish工具和Termux环境,实现高效安全的缓存合并操作。
注意:Android 12及以下版本无需部署Rish工具,可直接使用本工具。
重要提示:此项目仅供学习和技术交流使用,不得用于任何商业或非法用途。使用本工具处理的所有缓存文件应在24小时内删除。请遵守相关法律法规和Bilibili用户协议。
- ✅ 绕过Android 13+对应用数据目录的访问限制
- ✅ Android 12及以下版本无需特殊配置
- ✅ 自动扫描B站缓存文件
- ✅ 交互式选择要合并的视频
- ✅ 显示文件大小信息和总空间需求
- ✅ 智能清理临时文件
- ✅ 友好的命令行界面
- ✅ 支持批量处理和范围选择
- Termux
- Python 3.x
- FFmpeg
- Shizuku
- Rish工具(仅Android 13+需要)
在Termux中执行以下命令:
termux-setup-storage
pkg update
pkg upgrade
pkg install python ffmpeg- 从Google Play或GitHub Release安装Shizuku
- 按照应用指引启动Shizuku服务
- 在Shizuku应用中导出Rish文件:
- 导出
rish和rish_shizuku.dex两个文件
- 导出
- 将导出的文件移动到Termux主目录(
~) - 授予执行权限:
chmod +x ~/rish
cd ~
git clone https://github.com/zip8919/RishBiliCacheMerge.git
cd RishBiliCacheMerge
chmod +x main.sh~
├── rish # Android 13+需要的Rish可执行文件(仅高版本需要)
├── rish_shizuku.dex # Rish原始文件(仅高版本需要)
└── RishBiliCacheMerge # 项目目录
├── main.sh # 主启动脚本
├── main.py # Python处理脚本
└── README.md # 项目文档
- Android 13+用户:确保Shizuku服务已启动
- 在Termux中进入项目目录:
cd ~/RishBiliCacheMerge
- 运行主脚本:
sh ./main.sh
- 按照屏幕提示:
- 查看视频列表
- 选择单个/多个视频
- 确认选择的视频
- 等待合并过程完成
- 处理完成后可选择清理临时文件
-
初始化阶段:
- 创建必要的目录结构
- 清理旧缓存文件
-
数据收集:
- Android 13+:使用Rish工具访问受限目录
- Android 12-:直接访问缓存目录
- 复制所有entry.json文件到工作目录
-
用户交互:
- 解析JSON文件提取视频信息(标题、分集、作者等)
- 显示可用的视频列表及大小信息
- 支持多种选择模式(单个、多个、范围)
-
文件处理:
- 计算并显示总空间需求
- 复制音视频文件到临时目录
- 使用FFmpeg合并音视频流为MP4文件
- 保存最终文件到输出目录(自动过滤非法字符)
-
清理阶段:
- 删除临时文件
- 清理工作目录
- 保留合并后的最终视频文件
-
Android版本差异:
- Android 13+:需要Shizuku和Rish工具
- Android 12及以下:无需额外配置,直接使用
-
目录结构:
/json- 存放扫描到的视频信息/video- 临时处理目录/output- 最终合并的视频文件
-
空间要求:
- 确保设备有足够的存储空间(系统会显示预估所需空间)
- 合并高清视频可能需要较长时间
-
权限问题:
- Android 13+:检查Shizuku服务是否正常运行
- 所有版本:Termux需要存储权限
-
临时文件:
- 处理完成后系统会提示清理选项
- 可选择保留或删除临时文件
欢迎提交Issue和PR!如有使用问题,请在项目Issue区提问。
许可证 本项目采用 Apache License Version 2.0 Copyright 2025