LinkAndroid v2.1.0 已经发布。本次更新围绕手机投屏、设备屏幕控制和测试工程维护展开:应用内的 scrcpy 升级到 4.1,投屏界面右侧新增息屏与亮屏按钮,测试项目则统一使用 projectRoot() 解析根目录。
这不是一次只改界面文字的小版本。对日常需要连接真机、调试应用或执行自动化测试的开发者来说,设备控制链路更顺手,项目路径处理也更一致。
投屏控制更直接
新版本将 scrcpy 升级到 4.1。scrcpy 是 Android 开发中常用的设备投屏工具,可以通过 USB 或网络连接显示并操作手机画面。LinkAndroid 将它集成到手机连接助手中,减少了开发者在多个工具之间切换的成本。
投屏右侧新增了息屏和亮屏按钮。开发者可以在保持投屏连接的同时关闭手机物理屏幕,减少桌面干扰或设备功耗;需要查看设备时,再快速点亮屏幕。这个操作尤其适合长时间运行测试、录制操作过程或把手机放在支架上的场景。
如果需要在命令行中验证类似能力,可以直接使用 scrcpy 的控制参数。下面的命令假设设备已经通过 adb devices 识别,并且本机已安装 scrcpy:
# 查看已连接的 Android 设备
adb devices
# 启动投屏,并在启动后关闭设备屏幕
scrcpy --turn-screen-off
# 投屏过程中通过快捷键控制屏幕状态:
# Ctrl+O:关闭设备屏幕但保持投屏
# Ctrl+Shift+O:重新点亮设备屏幕
实际可用快捷键和参数取决于本机安装的 scrcpy 版本。使用 LinkAndroid 时,可以优先通过界面按钮完成操作,避免记忆命令参数。
测试工程统一解析项目根目录
本次还新增了测试项目根目录统一解析工具 projectRoot(),并将测试文件中各自独立计算根目录的方式替换为统一调用。
这类改动看起来不大,却能解决测试代码中常见的路径漂移问题:某个测试文件被移动到子目录后,原本基于相对路径的计算可能失效;不同测试文件使用不同层级的 ../,也会让资源文件、配置文件和报告输出目录变得难以维护。
可以将这个思路应用到自己的测试项目中。下面是一个最小的 JavaScript 示例,假设项目根目录通过环境变量或当前工作区确定:
// test/project-root.js
import path from "node:path";
import { fileURLToPath } from "node:url";
const currentFile = fileURLToPath(import.meta.url);
const currentDir = path.dirname(currentFile);
export function projectRoot() {
return path.resolve(currentDir, "..");
}
测试文件统一通过这个工具访问资源:
// test/device-config.test.js
import path from "node:path";
import { projectRoot } from "./project-root.js";
const configFile = path.join(projectRoot(), "config", "devices.json");
console.log(`Using device config: ${configFile}`);
运行前请根据实际目录结构调整 projectRoot() 中的层级。如果项目使用 TypeScript、Python 或其他测试框架,也可以保留同样的原则:根目录解析只放在一个地方,测试用例只消费统一接口。
仓库维护同步更新
.gitignore 增加了 OpenCode 临时文件忽略规则。这意味着开发过程中产生的相关临时文件不会轻易进入 Git 变更列表,有助于保持提交内容干净。
升级后可以检查本地工作区是否仍有不应提交的文件:
git status --short
# 查看当前 .gitignore 是否包含 OpenCode 相关规则
rg -n "OpenCode|opencode" .gitignore
忽略规则只影响 Git 的跟踪判断,不会删除本地文件,也不会替代团队对敏感配置和构建产物的管理。对于设备测试项目,仍应单独确认日志、截图、录屏和本地设备配置中是否包含隐私信息。
升级建议
LinkAndroid v2.1.0 适合以下使用场景:
- 经常通过投屏查看和操作 Android 真机。
- 需要在测试期间快速切换设备息屏与亮屏状态。
- 希望使用较新的 scrcpy 能力和兼容性改进。
- 维护包含多个测试目录、资源目录和设备配置的工程。
升级后建议做一次小范围验证:确认设备能够被 ADB 识别,启动投屏并测试息屏、亮屏按钮,再运行现有测试检查资源路径是否正常。若团队有自定义 scrcpy 参数或外部脚本,也应核对新版本参数和快捷键行为,避免把应用内配置与旧版命令行假设混用。
总体来看,这个版本一边更新了底层投屏组件,一边收紧了测试工程的目录约定。前者改善日常设备操作,后者降低长期维护中的路径问题,适合作为 Android 真机调试和自动化测试环境的一次常规升级。