Repository navigation
XScript v0.2.4
XScript v0.2.4 正式版,使用与 v0.2.3 相同的 Release 密钥签名,可直接覆盖升级 v0.2.1–v0.2.3。主应用版本号 0.2.4,versionCode 6。
下载与安装
xscript-v0.2.4-release.apk:Android 8.0(API 26)及以上,包含 ARM64 和 x86_64。SHA256SUMS:安装包 SHA-256 校验文件。- 从 v0.2.1–v0.2.3 正式版可直接覆盖安装;从 Debug 版切换需先导出项目再卸载(卸载会清除应用数据)。
- 全新安装后需先授予通知权限,HTTP 服务才会启动。
- 「管理后台」修复需要同时更新服务端(backend)。
修复
- 高 · 管理后台权限:操作员可以手动运行、启停或删除管理员创建的「定时下发小程序」任务,相当于绕过管理员权限向设备下发代码;现在这四种操作都需要管理员。
- 中 · 设备接口转发白名单:操作员可转发的
/projects/…/run只校验前后缀,POST /projects/run也能通过(在设备上会新建名为 run 的工程);现在必须是/projects/<工程名>/run|stop|files|config。 - 中 · 脚本退出码:
raise SystemExit("错误信息")被当作正常退出(0);现在与 CPython 一致,打印信息并以 1 退出。 - 低 · 设备地址解析(MCP / VS Code 插件):带路径的地址(如
http://ip:9860/tools/)和 IPv6 地址解析错误;现在都支持。 - 低 · 错误提示(MCP / VS Code 插件):设备返回的错误原因(如「工程已存在」)丢失,现在会显示在错误信息里。
- 低 · mock 设备:读取
../路径返回 404,与真实设备(400)不一致,已对齐。
测试
- 新增:后台账号安全(会话、改密、API 令牌、两步验证滥用、设备密钥吊销、任务权限、转发白名单)、MCP 工具层与端到端、运行时 runner(退出码、日志、启动参数、线程)和 action / AScript 兼容层、VS Code 插件地址解析与日志跟随、Kotlin
ScreenOptionsTest/DapTransportTest。 - 用例数:后台 32 → 40,MCP 15 → 24,运行时 170 → 189,插件 3 → 10,Kotlin 71 → 77。覆盖率:后台 85% → 87%,MCP 66% → 86%,运行时 65% → 67%(runner 18% → 93%)。
coverage加入后台和 MCP 的 test 依赖。
内部
/screen参数解析拆为ScreenOptions;DapTransport端口可在测试中替换;VS Code 插件的日志跟随逻辑移到client.ts。接口行为不变。
验证范围
- Release 构建、签名证书(与 v0.2.3 一致)及 APK 元数据(0.2.4 / 6)校验通过。
scripts/verify.sh(运行时、后台、MCP、网页 IDE 浏览器测试、Kotlin 单元测试、VS Code 插件)全部通过。- 本 Release APK 已在 ARM64 Android 17 模拟器(emulator-5554)上
adb install -r覆盖安装并回归:工程/文件接口冒烟测试、8 路并发新建(1 个 200,其余 409)、XS_DEVICE_URL浏览器测试 12/12 通过。SystemExit退出码修复只有单元测试覆盖,未在设备上单独验证。 /screen?max=缩放只有单元测试覆盖(模拟器重装后未授予截屏权限)。未做真机验证。