Skip to content

定时任务与下载任务

第 17 章:定时任务与下载任务——到点执行并查看后台进度 ​

17.1 定时任务怎样工作 ​

应用使用 Android WorkManager 延期唤醒执行。它适合“某个时间附近运行”的任务,不保证像闹钟一样秒级准时。省电策略、后台限制、无网络、手机重启和模型服务故障都可能影响执行时间。

每次执行会使用你指定的模型和任务说明,在独立上下文中完成。任务说明必须自包含,不能只写“继续上次的事”。

17.2 四种频率 ​

类型必填信息示例
一次性yyyy-MM-dd HH:mm,且晚于当前时间2026-08-25 09:30
每天HH:mm08:00
每周星期 1~7 + HH:mm;1=周一,7=周日周五 18:00
每月1~31 日 + HH:mm每月 1 日 09:00

选择 29~31 日时,要考虑某些月份没有这一天。关键任务应查看实际“下次执行”时间。

17.3 在任务页手动创建 ​

  1. 打开侧栏 任务。
  2. 点击 添加定时任务。
  3. 填写任务名称,例如“每周项目总结”。
  4. 填写完整任务说明。
  5. 选择一次性、每天、每周或每月。
  6. 按页面格式填写运行时间、星期或日期。
  7. 从已保存模型中选择服务商和执行模型。
  8. 保存并确认任务处于启用状态。
  9. 回到列表核对“下次执行”。

任务说明示例:

text
读取当前工作区的 progress.md 和 TODO.md。
只生成总结,不修改源文件。
把结果写入 reports/weekly-YYYY-MM-DD.md。
若文件不存在或模型请求失败,在结果中说明,不要猜测。

17.4 用自然语言创建 ​

可以说:

创建一个每周五 18:00 执行的任务,使用已保存的轻量模型,读取工作区 TODO.md,把未完成项摘要写入 weekly.md。创建前先把完整配置给我确认。

创建、修改、启停和删除属于配置变更,应核对任务名、频率、时间、模型和说明。

17.5 查看结果和失败原因 ​

任务列表会显示:

  • 等待、运行、完成或失败状态;
  • 下次执行;
  • 最近执行时间;
  • 最近结果;
  • 最近错误;
  • 点击查看完整输出。

“模型完成”只表示模型请求结束,不一定表示业务目标成功。打开完整结果并检查目标文件或远程状态。

17.6 编辑、停用和删除 ​

  • 编辑:修改名称、说明、频率、时间或模型;
  • 停用:保留配置但不再安排执行;
  • 删除:移除任务配置,不会自动删除任务已经创建的文件;
  • 删除会显示倒计时确认,避免误触。

长期不用时先停用观察,确定不再需要再删除。

17.7 通知和后台限制 ​

任务页可以打开完成/失败通知。Android 13 及以上还需授予通知权限。

提高可靠性的方法:

  1. 允许通知;
  2. 在系统电池设置中允许 Lyra Code 后台运行;
  3. 不要依赖“锁进后台”作为唯一保活手段;
  4. 确保执行时网络和模型额度可用;
  5. 对重要任务准备服务器端 Cron、CI 或其他可靠调度作为正式方案。

Root 用户可能有更强的系统级保活手段,但不应为了定时任务盲目 Root 手机。

17.8 下载任务 ​

Agent 使用原生 download_file 后,侧栏 任务 → 下载任务 会显示:

  • 等待下载;
  • 已下载大小和总大小;
  • 实时速度;
  • 完成或失败原因;
  • 目标文件结果。

下载工具支持 HTTP/HTTPS 重定向、自定义请求头和可选 SHA-256 校验。下载软件、rootfs 或其他重要文件时,应优先提供官方 SHA-256。

示例:

从这个官方 HTTPS 地址下载文件到工作区 downloads 目录,并按发布页给出的 SHA-256 校验。若校验不一致,停止并报告,不要使用文件。

17.9 清除已完成下载 ​

点击 清除已完成下载 会清理已经结束的任务记录。它不是文件管理器的删除操作;已经下载到工作区或共享存储的真实文件需要到文件页另行管理。

17.10 后台命令不是定时任务 ​

长时间运行的开发服务器或命令进程属于后台命令,不等同于“每周五执行一次”的定时任务。启动后台命令后应另外检查:

  • 进程是否仍在;
  • 端口是否监听;
  • 日志是否有错误;
  • Android 是否回收进程。

17.11 常见问题 ​

到点没有立即运行 ​

WorkManager 不是精确闹钟。先等一段时间,再检查任务启用状态、下次执行、时区、省电限制和网络。

提示时间格式错误 ​

一次性使用 yyyy-MM-dd HH:mm,每天/每周/每月使用 HH:mm;星期必须 1~7,日期必须 1~31。

任务运行了但没有写文件 ​

检查说明是否写明工作区、输入文件和输出路径,模型是否有对应文件工具,以及完整结果里是否有路径或权限错误。

下载校验失败 ​

不要打开文件。重新核对 SHA-256 是否来自同一版本的官方发布页,删除错误文件后重新下载。


下一章:Skills 技能包

AGPLv3