/WeChatJumpHelper

微信跳一跳助手,基于 OpenCV for Android,无需 PC 辅助

Primary LanguageC++MIT LicenseMIT

微信跳一跳助手

该工具通过MediaProjection + OpenCV + sendevent 实现了Android端微信跳一跳自动游戏功能,在 rooted 安卓手机上可直接运行,无须借助PC。工具以悬浮窗形式存在,进入跳一跳后点击悬浮窗开始自动游戏。

屏幕录制使用 ImageRecorder(5.0以上)读取屏幕信息,复用Bitmap对象防止内存频繁申请。

图像识别使用 OpenCV C++ 库,使用 Python 实现后移植到 Android JNI 。先使用滤波,颜色过滤,二值化等方法预处理图片,然后寻找直线,椭圆线段来定位跳棋和下一个平台的中心点。通过修改 OpenCV 的工具类源码实现Bitmap转Mat对象的内存优化,达到内存基本无抖动。可在屏幕绘出 OpenCV 各阶段的调试图像,以方便调试。

跳跃控制使用自编译二进制文件,通过直接写入设备文件实现屏幕点击控制,解决使用 input 命令时执行速度过慢,和使用 sendevent 命令无法精确控制跳跃时间的缺陷。