Repository navigation
Releases: Aliothmoon/MaaFwApp
Releases · Aliothmoon/MaaFwApp
Release list
v0.2.2
新功能
- 下载速度: 下载更新时,进度条旁显示最近 3 秒的下载速度
- GitHub 更新源以 Mirror酱版本为准: 选 GitHub 源时,先匿名向 Mirror酱查最新版本,查到就以它为准:检查更新不再调用国内常连不上或被限流的 GitHub API,下载时取 GitHub 上同一版本的安装包,没有就提示找不到对应安装包。Mirror酱不认识这个项目、请求失败或没有配置时,照旧用 GitHub 自己的最新版本
- 崩溃与异常上报: 开启遥测时,额外上报 ANR(附系统线程栈)和 Android 12 及以上的原生崩溃
修复
- 日志体积:
- MaaFramework 的
maafw.bak.*.log备份不再无限增长:每轮开始前,每个日志目录保留最新 3 份,更早的超过 3 天或总量超过上限(主日志 128MB、每个 agent 目录 64MB)就删除;只删名字完全符合备份格式、旁边有maafw.log的文件。 - 导出的日志压缩包控制在 24MB 以内,可以直接作为 GitHub 附件上传:当前日志一定带上,备份、截图等按时间从新到旧放满为止,放不下的列在
export_skipped.txt。
- MaaFramework 的
- Agent 启动失败: 提示里写明是哪个 agent 没起来,并提示在设置里打开调试模式后重试以记录原因(@Craun718)。
- 遥测: 手动停止、被抢占或到达时长上限而中断的任务记为已取消,不再算作任务失败。
- 折叠箭头: 可折叠卡片(服务器、控制器、设置各分区等)收起时箭头朝下、展开时朝上,与其他折叠处一致。
- Mirror酱来源标识: 请求 Mirror酱的
user_agent和网站链接的source统一为MaaFwApp。
开发相关
- 出包前按打包配方的
agent.runtimes检查每个 ABI 的运行时文件和入口是否齐全,缺了直接构建失败并逐条列出缺什么;INTEGRATION.md补充对应的排查说明(@Craun718)。
兼容性
- 需要 MaaFramework v5.13.0 或更高版本。
完整变更:v0.2.1...v0.2.2
v0.2.1
新功能
- 跑不了的任务改为跳过:
- 在当前环境跑不了的任务(资源或控制器不匹配、没有 Android 控制器、已从项目里移除)用跳过图标代替勾选框,下方写明原因;添加任务列表、模板预览和悬浮窗里显示同样的原因。
- 勾选着的这类任务不再让整轮运行被拒,改为跳过,运行日志逐个写明跳过了哪些、为什么;环境恢复后勾选状态原样回来。
- 原因里会写出要切换到的控制器;已从项目移除的任务提示删除。
- 调试截图: 调试模式下,后台模式的快捷面板多了截图按钮,可随时保存当前虚拟屏画面到
log/manual/,导出日志时一并带上,最多保留 20 张。 - 打包配方: 新增
display.foreground,写false只保留后台模式,首页不再显示运行模式开关。
修复
- agent:
- agent 能收到任务和节点事件,go-service 里靠事件触发的逻辑(如分辨率检查)在安卓上恢复生效;
- agent 打印的 HTML 提示渲染后显示在「进度」里,并在本轮结束前写入运行日志。
- 运行:
- 目标窗口短暂拒收触摸(加载、网络遮罩)时,不再当作点击失败中断任务;
- 卡住的特权调用到时间就放弃,不再一直等待;
- 任务没有开始时,原因和堆栈写入运行日志和 app.log;调试模式的 logcat 抓取提前到初始化之前。
- Android 9: 选后台模式时在开始前提示「Android 10 以下无法使用后台模式」,不再等到虚拟屏创建失败才报「请检查服务权限」。
- 检查更新: 只提示已经上传了本机安装包的 GitHub 版本,修复发版过程中「提示有更新、下载却没有安装包」。
- 返回手势: 关闭预测性返回动画,返回直接生效。
开发相关
scripts/setup_maa_framework.py:- 只铺所选的那个版本,
--tag指定旧版本时不再被缓存里的新版本覆盖; jniLibs与产物一致时跳过,--force强制重铺;- 先解压到暂存目录,压缩包损坏时保留原有
jniLibs; - 下载先写
.part,中断不会留下残缺的 zip; - 只设了
ALL_PROXY时也会走代理。
- 只铺所选的那个版本,
- welcome 数组形式补充测试与文档。
兼容性
- 需要 MaaFramework v5.13.0 或更高版本。
完整变更:v0.2.0...v0.2.1
v0.2.0
新功能
配置导入导出
- 设置页新增「备份与恢复」:把任务配置、选项、定时和应用设置导出为 JSON。
- 导入时自动识别三种格式:本应用的备份(整体覆盖)、MXU 配置文件
mxu-*.json(含 MXU 自动备份)、MXU 标签页分享码(追加为新配置)。 - 密码、Mirror酱 CDK、解锁 PIN 和推送凭据不会导出;任何导入都不会覆盖或清空本机已填写的这些内容。
- MXU 定时导入后默认关闭,确认时间后再手动开启。
定时任务
- 调度环境健康卡:发现缺少的权限时给出修复引导,触发日志里也可以一键修复。
- 唤醒解锁:支持无密码、录制手势和 PIN 三种方式。
- 定时更可靠:
- 冷启动也能触发;
- 开机、改时间或时区、精确闹钟权限变化后自动重排闹钟;
- 闹钟从触发到派发全程持有唤醒锁。
- 每次开机提醒一次 OEM 自启动,并给出各厂商的省电设置提示。
- 时间选择改为滚轮,支持 24 小时制和上午 / 下午。
外观与设置
- 设置搜索:可以跨标签页、子页面和 PI 选项搜索。
- 纯黑主题、页面缩放(同时作用于悬浮窗)、自定义背景图(毛玻璃卡片)。
- 运行通知可以选超级岛、实时更新或标准通知栏样式。
- PI 的全局设置收进单独的「任务设置」面板,和应用自身的设置分开。
- 关于卡展示项目图标、名称和简介;联系方式直接展开显示;底部加了 Powered by MaaFwApp。
运行
- 可配置单轮运行时长上限,超时自动停止。
- 启动前提醒关闭智能分辨率和护眼模式。
- 新增分辨率预设,每档有各自的 dpi。
- PI 声明了多个 Adb 控制器时可以自行选择。
- 后台模式实时显示游戏帧率。
- 运行日志:
- 自动跟随到底部,可一键跳到底部;
- 每轮运行重新开始;
- 进度行显示 PI 里的任务名;
- 导出日志时附带 PI 目录下的 agent 日志。
PI 协议支持
- password 输入:界面掩码,落盘加密,日志和遥测里打码。
- checkbox 的
min_count/max_count。 setting分区。- Android 原生控制器支持 InputText。
- controller 的
attach_resource_path。 - welcome 支持数组形式。
- 公告、联系方式、许可协议改用 HTML 渲染,效果对齐 MXU。
- option 省略类型时按 select 处理。
- 控制器不支持的任务显示为「Android 不支持」并锁定。
- 首页可以展开查看项目诊断。
遥测与更新
- 任务失败作为 Sentry 事件上报,附带任务日志和出错截图;release 与环境命名和 MXU 对齐。
- 检查更新遵循 SemVer,按已安装包的类型更新。
- 兼容没有扩展名的 Mirror酱 下载地址。
- 启动时检查到已是最新版本,用 toast 提示。
修复
- 特权进程与 agent:
- 结束运行时不再卡住,也不会让特权进程异常退出;
- agent 子进程不再在特权进程退出后残留;
- agent 意外退出时会提示,并保存原生崩溃转储;
- 应用更新后 PI 目录里的 agent 数据不再丢失。
- 预览:
- 不再停在已经离开虚拟屏的应用的最后一帧;
- 特权进程重启后预览恢复正常。
- 输入:
- 低帧率游戏里的点击至少保持两帧,避免点不上;
- 逻辑触点和 Android pointerId 分开处理;
- 修正 AppOps 编号;
- specialUse 前台服务被系统拒绝时不再崩溃;
- 后台虚拟屏不再弹出输入法。
- 设置数据: 设置文件损坏时重置为默认值,而不是每次启动都崩溃。
- 运行日志:
- 跨轮次不再错乱;
- 原始回调刷屏时进度行不再被冲掉;
- 多路径资源加载只报一次。
- 界面:
- 按压高亮完整贴合圆角卡片和列表行;
- 折叠卡片的标题在摘要很长时仍可读;
- 若干对齐与尺寸问题。
兼容性
- 需要 MaaFramework v5.13.0 或更高版本。
完整变更:v0.1.0...v0.2.0