Evo-PicCatcher(图片捕手)

本项目仓库地址:Evo-PicCatcher

注意:Xposed 模块仓库仅发布 Release,不提交源码。本项目基于 Mingyueyixi/PicCatcher 进行深度重构与功能扩展。

项目介绍

Evo-PicCatcher 是一款 Android 图片自动化抓取工具。通过 LSPosed 框架拦截 App 的显示流程,把你在 App 里看到的图片自动保存到手机里。

支持的抓取方式

为了确保能抓到不同 App 里的图片,我们提供了多种拦截手段(可在设置中自由开关):

  • 标准图片库拦截(低开销,推荐开启)
    • 流行框架:支持 Glide, Coil, Fresco, Picasso 等主流图片加载库。
    • 系统原生:拦截系统自带的图片解码(Bitmap)和显示组件(ImageView)。
    • 网络与文件:直接从 App 的网络请求或本地文件读取中提取图片。
  • 现代框架适配(中影响)
    • 网页图片:支持抓取网页(WebView)中的图片资源。
    • 跨平台框架:专门针对 FlutterJetpack ComposeReact Native 和 Litho 等新一代 App 开发框架进行了深度适配。
  • 底层渲染拦截(强力模式,用于兜底)
    • 绘图引擎:直接拦截系统底层的绘图指令(Canvas, Skia)。
    • 屏幕渲染:监控屏幕画面渲染过程(Surface, RenderNode, HardwareRenderer),只要屏幕上显示出来了,就有机会抓到。

功能亮点

  • 应用预设(Beta):提供一些应用的预设,对于性能不好的设备比较友好。
  • 自动去重:MD5值一样的图片不会重复保存,节省你的手机空间。
  • 提权保存图片:使用Root权限,避免大量I/O开销
  • 防止相册杂乱:支持选择生成 .nomedia 文件,防止抓取的图片瞬间塞满你的系统相册。

使用说明

  1. 环境要求:需安装 LSPosed 管理器,且设备已获取 Root 权限
  2. 激活模块:在 LSPosed 中勾选“图片捕手”,并在作用域中选择你想要抓图的 App。
  3. 配置开关
    • 打开“图片捕手”App -> 进入设置。
    • 建议先尝试“低开销”预设,如果抓不到图,再开启“中影响”或“高影响”模式。
  4. 图片查看
    • 默认保存路径:手机内部存储的 Pictures/PicCatcher 文件夹下。
    • 内部保存路径:手机内部存储的 Android/data/com.evo.piccatcher/files/Pictures 文件夹下。

页面展示

首页 设置 设置 (拦截开关) 应用预设
首页 设置 设置 应用预设

隐私与安全说明

  • 本地处理:所有图片抓取和保存都在你的手机本地完成,没有任何联网上传功能,保护你的隐私。
  • 不费流量:我们是拦截已经下载好的数据,不会产生额外的上网流量。

TODO 接下来的开发事项

  • 补全所有方式的MD5去重功能
  • 优化UI
  • 尽量解决储存问题
  • 完善预设功能
  • 支持应用内管理抓取的图片库

如果有新的功能建议或发现抓不到图的 App,欢迎提交 Issues

TODO里有的就不要再提交Issues了

但是这里不需要手动抓取图片的建议。

开源协议与授权

本项目已获得原作者 Mingyueyixi 的正式授权,并使用 GPL-v3.0 开源协议。

注意所有分支均使用main分支的开源协议

Releases

4.10.48

Stable

6/6/2026, 8:39:30 AM

  • 完善了生成.nomedia文件功能
  • 添加了储存管理功能
  • 让更多的功能使用Shell命令而不是调用Java

Assets

1

4.9.34

Stable

6/2/2026, 4:22:05 PM

  • 增加了手动刷新Root授权状态的功能(那个刷新按钮很好玩的)
  • 为所有方式添加了MD5去重功能(能适当解决储存问题)

Assets

1

4.8.2

Stable

5/28/2026, 7:24:21 AM

  • 修复输入法问题
  • Fixed input method issues

Assets

1

4.8.1

Stable

5/26/2026, 1:21:03 PM

  • 现在可以选择是否自动生成.nomedia文件了
  • You can now choose whether to automatically generate .nomedia files

Assets

1

4.7.22

Stable

5/25/2026, 12:23:09 PM

  • 添加预设功能
  • 添加了抓取方式的开关

虽然说新加的功能不多,但都是大功能啊(笑)

  • Added preset functionality
  • Added switches for different capture methods

There may not be many new features this time,
but they’re all pretty big ones though. (^^;

Assets

1

4.6.9

Stable

5/23/2026, 3:36:38 PM

重新添加了之前因为版本回滚而丢失的功能

  • 加入HardwareRenderer / ThreadedRenderer 拦截
  • 加入Surface / SurfaceControl 监控
  • 添加了拦截方式的开关,以避免有的开销过大的抓取方式不能被关闭导致卡死
  • 修复Root授权显示错误
  • 移除了对Shell权限的支持

Re-added features that were previously lost due to the version rollback

  • Added HardwareRenderer / ThreadedRenderer interception
  • Added Surface / SurfaceControl monitoring
  • Added switches for capture methods to prevent freezes caused by high-overhead interception methods that could not previously be disabled
  • Fixed incorrect Root authorization status display
  • Removed Shell permission support

Assets

1

4.3.7

Stable

5/18/2026, 4:08:48 PM

  • 修复因shell/su授权闪退的问题
  • 修复阻挡宿主渲染图片的问题
  • 重写su权限请求逻辑
  • Fix crashes caused by shell/su permission authorization
  • Fix an issue where image rendering in the host app was blocked
  • Rewrite the su permission request logic

Assets

1

4.2.16

Stable

4/19/2026, 3:51:16 PM

此版本需要Shell授权(Shizuku/Sui)

之后会更新支持Root权限的版本,可以选择不更新

解决了宿主应用无权限时无法正确保存的问题
鬼知道我经历了多少版本
没什么新功能,反而倒退了
代码是回滚到3.5.12重写的,所以那些新的抓取方式都没有了

  • 重写保存逻辑
    • 图片会被缓存在[宿主私有路径]/cache/PicCatcher
    • 之后使用shell命令转存到Android/data/com.evo.piccatcher/files/Pictures/[宿主包名] (内部位置)
    • 或者外部位置Pictures/PicCatcher/[宿主包名]
  • 需要shell授权(Shizuku/Sui)

此保存方案极其可靠

Assets

1

3.6.15

Stable

4/8/2026, 3:19:09 PM

3.6.15

  • 添加Bitmap抓取方式
  • 新增 FileCatcher
  • 新增 RenderNode 拦截
  • 新增 Surface 级监控
  • WebView & X5 内核增强
  • NativeBitmap 增强
  • 稳定性与性能优化

宿主app权限问题未解决,现版本遇到权限问题会将图片保存到外部位置Pictures/PicCatcher

遇到任何问题请提交Issues,非常感谢

Assets

1

3.5.12

Stable

4/5/2026, 9:43:04 AM

v3.5.12

  • Change version format
  • Add new icon

v3.5.12

  • 更改版本格式
  • 添加新图标

Assets

1