Iris长截图
1.0.0 · GitHub
More about this app
Scrolling-screenshot tool for Android games that auto-scrolls and stitches long captures using MediaProjection or Shizuku-powered shell capture.
IrisShot
IrisShot 是一款面向 Android 横屏游戏的长截图工具,通过屏幕捕获、自动滑动、画面分析与图像拼接生成长截图。
主要功能
- 支持横向和纵向滚动截图
- 支持配置截图区域、滑动区域和固定区域
- 支持 MediaProjection 与 Shizuku 两种捕获方式
- 支持导出 JPG 和 PNG 图片
- 支持结果预览、裁剪、重新拼接与分享
系统要求
- Android 10(API 29)及以上
- 自动滑动需要无障碍权限,或使用 Shizuku 模式
构建
使用 Android Studio 打开项目并同步 Gradle,然后选择 app 配置进行构建。
- JDK 21
- Android SDK 36.1
- Gradle 9.4.1
How Shizuku is used
Can take scrolling screenshots, auto scroll games and grant its own overlay and notification permissions via Shizuku shell commands and input injection.
This is an AI-assisted analysis of Shizuku-related usages in the app's public source code. It is best effort, so it may not catch every single usage.
How this app uses Shizuku
Shizuku powers an alternative capture and scrolling engine for long screenshots of games, plus automatic permission grants and foreground detection.
- Capture screen without recording: takes each stitch frame with the
screencap -pshell command through Shizuku instead of screen recording, used for the scrolling capture loop, region learning samples and template saves. - Auto scroll game pages: performs the scroll gesture by injecting touchscreen down, move and up events through Shizuku, driving automatic page turns during capture and region learning.
- Enable floating controls automatically: grants the app's own display over other apps permission with an app operations command through Shizuku when the user enables it from the main screen.
- Enable notifications automatically: grants the app's own notification permission with a package manager or app operations command through Shizuku when the user enables it from the main screen.
- Find the game to capture: reads the currently visible app and window state with system status dumps through Shizuku to target the overlay, keep polling during capture and stop when the target is unsafe.
Android APIs or commands used
screencap -pcmd appops set --user SYSTEM_ALERT_WINDOW allowcmd appops set --user --uid SYSTEM_ALERT_WINDOW allowpm grant --user android.permission.POST_NOTIFICATIONScmd appops set --user POST_NOTIFICATION allowdumpsys windowdumpsys activity activitiesdumpsys inputandroid.hardware.input.InputManagerGlobal.getInstance()InputManager.injectInputEventMotionEvent.obtain
Notable details
Shizuku mode is optional. The app can also capture with MediaProjection and request overlay and notification access manually, so the same long screenshot flow can work without Shizuku with extra user steps.
Changelog
What's new for version 1.0.0
Permissions
9 permissions requested