摘要
用 TRAE SOLO 基于开源项目快速开发了一款Android自动截屏APP,实现了后台定时截屏、连续截屏、张数限制、即时截屏等功能。原本需要从零开发数天的工作,通过"胶水编程"方法论复用成熟组件,仅用10分钟完成核心功能开发并成功编译出APK。
2. 背景
我是一名开发者,需要一个能在后台自动定时截屏的Android工具,用于监控其他APP的运行状态。市面上现有的截屏工具要么功能单一,要么需要付费,且无法自定义截屏间隔和张数限制。如果从零开发,需要处理MediaProjection权限、前台服务、文件存储等复杂逻辑,预计耗时数天。于是尝试用 TRAE SOLO 的"胶水编程"能力来快速实现。
3. 实践过程
任务拆解
将需求拆分为可复用模块:
- 屏幕捕获能力 → MediaProjection API(Android原生)
- 后台服务能力 → Foreground Service(Android原生)
- 开源项目基础 → GitHub上的 Android-AutoScreenshot 项目
使用的 SOLO 能力
- 代码搜索与理解 :SOLO 快速分析开源项目结构,识别核心类和配置文件
- 胶水代码生成 :创建 SettingsManager.kt 作为配置管理胶水层
- 功能扩展 :添加即时截屏广播、张数限制、间隔配置等功能
- 问题诊断与修复 :
- 发现 .nomedia 文件导致截图在相册不可见
- 修复滑块精度问题(去掉 steps 参数)
- 添加 MediaScanner 让相册即时刷新
关键 Prompt 示例
看看项目说明帮我做
项目需求:后台定时截屏、连续截屏、可设置
截屏张数、即时截屏当前屏幕
踩过的坑
- 截图找不到 :原代码创建了 .nomedia 文件,导致相册完全隐藏该目录,删除后改用标准 Pictures/ 目录解决
- 滑块不精细 :原代码使用 steps = 10 导致只有11个固定档位,去掉后实现按秒精细拖动
- Gradle缓存 :修改代码后编译显示 UP-TO-DATE,需要 clean 后重新编译
4. 成果展示
功能特性:
-
后台定时截屏(1-300秒可调) -
连续截屏 + 张数限制 -
即时截屏按钮(截取当前屏幕) -
截图自动保存到相册 Pictures/AutoScreenshot/ 目录 -
相同截图自动去重 -
开机自动恢复服务
技术架构: -
语言:Kotlin + Jetpack Compose
-
最低版本:Android 13 (API 33)
-
APK大小:23.21 MB
代码仓库: 本地项目(可提供源码)
截图展示:
- 主界面:设置面板 + 服务控制按钮
- 间隔滑块:1-300秒精细调节
- 张数输入框:支持无限模式切换
5. 效果与总结
提效对比
环节 传统开发 SOLO 胶水编程 需求分析 1小时 10分钟 架构设计 2小时 复用开源 核心开发 1-2天 10分钟 调试修复 半天 20分钟 总计 2-3天 40分钟
SOLO 在流程中的作用
- 快速定位 :自动搜索并分析开源项目结构
- 胶水层生成 :创建最小量的配置管理代码
- 问题诊断 :识别 .nomedia 等隐蔽问题
- 编译自动化 :生成 Python 脚本处理环境配置
可复用方法
胶水编程方法论 :
-
凡是能不写的就不写,复用成熟开源组件
-
自定义代码只承担组合、调用、封装、适配
-
通过最小量的"胶水代码"连接各模块
这种方法特别适合: -
快速原型开发
-
内部工具开发
-
小团队构建大系统
APK下载地址: e:\cursor–zidongjieping\zidongjieping\app\build\outputs\apk\debug\app-debug.apk