Escrcpy 设备控制完全指南:scrcpy 设备操作命令与 Android 设置项深入解析
Escrcpy 设备控制完全指南scrcpy 设备操作命令与 Android 设置项深入解析【免费下载链接】escrcpy Display and control your Android device graphically with scrcpy.项目地址: https://gitcode.com/GitHub_Trending/es/escrcpy本指南以 docs/zhHans/reference/scrcpy/device.md 为骨架系统讲解 scrcpy 运行时对 Android 设备本身的控制能力——保持唤醒、屏幕超时、关屏、触摸痕迹、断电/通电策略以及启动指定应用等。文中所有命令均可直接在装有 scrcpy 的终端中运行同时结合 Escrcpy本项目的偏好设置模型与源码实现说明这些参数在图形化客户端中的对应关系与底层生效原理。读完本文你将掌握 scrcpy 全部设备级参数的使用方法、单位与取值细节、与adb shell settings的手动操作对应关系以及 Escrcpy 中如何通过界面配置这些参数。概述什么是设备控制参数scrcpy 的大多数命令行参数用于控制镜像本身分辨率、编码、窗口等但还有一类参数会对设备本身执行操作——例如修改系统设置、开关屏幕、启动应用。它们的特点是scrcpy 在启动时应用修改在退出时尽可能恢复设备的初始状态从而保证用完即走、不留痕迹。在 Escrcpy 中这些参数被抽象为 设备device偏好模型 下的若干配置项界面配置后会由 偏好存储的scrcpyParameter方法 拼接为最终的 scrcpy 命令行参数。下文逐一讲解每个参数。保持唤醒--stay-awake / -w当设备通过有线连接时防止设备延迟休眠scrcpy --stay-awake scrcpy -w # 简写形式关闭 scrcpy 时恢复设备的初始状态如果设备未通过有线连接即仅通过 TCP/IP 无线连接--stay-awake无效——这是 Android 系统的特性休眠策略仅对有电充电场景生效该功能通过修改 Android 全局设置项stay_on_while_plugged_in实现可手动调整# 获取当前 stay_on_while_plugged_in 值 adb shell settings get global stay_on_while_plugged_in # 为 AC / USB / 无线充电器启用保持唤醒 adb shell settings put global stay_on_while_plugged_in 7 # 禁用保持唤醒 adb shell settings put global stay_on_while_plugged_in 0取值为位标志1 表示 AC 供电2 表示 USB4 表示无线充电7 124 即三种供电方式全部启用。在 Escrcpy 的偏好设置中该参数对应设备分类下的保持唤醒开关stayAwake字段--stay-awake类型Switch。本地化文案特别注明仅有线方式连接时有效见 zh-CN.json与上述 Android 特性保持一致。屏幕关闭超时--screen-off-timeoutAndroid 屏幕会在一定延迟后自动关闭scrcpy 可在运行时修改该延迟scrcpy --screen-off-timeout300 # 300秒5分钟退出时恢复原始值。也可手动修改# 获取当前 screen_off_timeout 值 adb shell settings get system screen_off_timeout # 设置新值单位毫秒 adb shell settings put system screen_off_timeout 30000单位陷阱需特别注意Android 系统值screen_off_timeout的单位是毫秒而 scrcpy 命令行参数的单位是秒。在 Escrcpy 中对应屏幕超时配置项screenOffTimeout字段--screen-off-timeout类型InputNumber界面上的追加单位显示为s秒提示文案为修改屏幕关闭超时设置并在退出时恢复设备默认占位符为设备默认即不设置时沿用设备自身值。关闭屏幕--turn-screen-off / -S在镜像开始时通过命令行关闭设备屏幕scrcpy --turn-screen-off scrcpy -S # 简写形式也可随时通过快捷键操作完整列表见 快捷键文档MODo关闭设备屏幕保持镜像MODShifto重新打开屏幕。需要了解的行为细节在 Android 设备上物理POWER键总是会唤醒屏幕通过 scrcpy 发送POWER指令右键点击或MODp会强制在一小段延迟后关闭屏幕尽力而为物理POWER键仍会唤醒屏幕。此功能也可与保持唤醒组合用于关屏不息屏的长时间任务场景scrcpy --turn-screen-off --stay-awake scrcpy -Sw # 简写形式从Android 15开始可手动通过cmd display控制主显示屏电源# 关闭屏幕0表示主显示屏 adb shell cmd display power-off 0 # 打开屏幕 adb shell cmd display power-on 0Escrcpy 中对应控制时关闭屏幕开关turnScreenOff字段--turn-screen-off此外在控制工具栏中还有独立的关闭屏幕快捷操作界面文案关闭屏幕且保持控制见 zh-CN.json配合镜像窗口的旋转按钮等同属设备控制动作。显示触摸痕迹--show-touches / -t做演示时在物理设备上显示触摸痕迹非常有用。Android 开发者选项中自带此功能scrcpy 提供启动时启用、退出时恢复初始值的选项scrcpy --show-touches scrcpy -t # 简写形式注意此功能仅显示物理触摸痕迹手指在设备上的触摸scrcpy 注入的虚拟触摸不会显示。可手动修改# 获取当前 show_touches 值 adb shell settings get system show_touches # 启用 show_touches adb shell settings put system show_touches 1 # 禁用 show_touches adb shell settings put system show_touches 0Escrcpy 中对应展示触摸点开关showTouches字段--show-touches提示文案为开启后将激活开发者选项中的显示点按触摸反馈与仅在物理设备上展示。关闭时断电--power-off-on-close在关闭 scrcpy 时同时关闭设备屏幕scrcpy --power-off-on-closeEscrcpy 中对应控制结束关闭屏幕开关powerOffOnClose字段--power-off-on-close提示文案为开启后停止控制设备将自动关闭设备屏幕。启动时通电--no-power-on默认情况下启动 scrcpy 会唤醒设备。如需禁用此行为scrcpy --no-power-onEscrcpy 中对应控制时禁用自动亮屏开关noPowerOn字段--no-power-on提示开启后控制设备时将禁用自动亮屏。此外偏好模型中还包含--keep-active保持活跃开关其作用是在设备空闲时周期性向系统发送用户活动信号防止设备因不活动而关闭——它与保持唤醒配合可覆盖更多长连接场景。启动 Android 应用--list-apps / --start-app列出设备应用scrcpy --list-apps该命令输出设备上安装的应用列表。在 Escrcpy 中这一能力被封装为 scrcpy 中间件的getAppList方法——见 desktop/electron/middleware/scrcpy/index.js它执行scrcpy --serial序列号 --list-apps并通过parseScrcpyAppList解析输出。启动指定应用通过包名在启动时运行指定应用scrcpy --start-apporg.mozilla.firefox此功能尤其适合配合虚拟显示器使用——在一个独立的虚拟显示中直接启动应用与设备主屏幕分离scrcpy --new-display1920x1080 --start-apporg.videolan.vlc--start-app的值支持三种形态前缀含义示例无直接指定包名推荐最快--start-apporg.mozilla.firefox启动前先强制停止该应用--start-apporg.mozilla.firefox?按应用名称检索后启动--start-app?firefox两个前缀可组合使用按此顺序scrcpy --start-app?firefox说明通过?按应用名称检索可能需要几秒需要遍历应用列表因此官方建议直接使用包名。Escrcpy 中的实现视角在 Escrcpy 中应用启动流程由 use-start-app hook 承载其核心流程与上述命令行完全对应resolveScrcpyRuntime合并设备配置与启动配置通过scrcpyParameter生成命令参数store/preference/index.js——false、null、undefined、空字符串等值会被剔除不进入最终命令行需要新建虚拟显示时解析--new-display尺寸与横竖屏参数landscape会交换宽高或追加横屏标志中间件launchdesktop/electron/middleware/scrcpy/index.js在拼接命令时追加--new-display尺寸与--start-app包名并通过就绪正则New display:.?(id(\d))捕获新虚拟显示的 display id 作为返回值对于多用户work profile / secondary user场景openSecondaryUserApp会改用adb shell am start-activity --user userId --display displayId -n 组件名的方式在指定用户与指定显示上拉起应用再启动镜像进程。在 Escrcpy 中配置这些参数上述全部设备参数在 Escrcpy 的偏好设置界面中均可直接配置模型定义见 desktop/src/models/preference/device/index.js汇总如下界面配置项命令字段控件类型界面提示zh-CN屏幕超时--screen-off-timeoutInputNumber单位 s修改屏幕关闭超时设置并在退出时恢复设备默认保持唤醒--stay-awakeSwitch仅有线方式连接时有效保持活跃--keep-activeSwitch防止设备因不活动而关闭将定期向系统发出用户活动信号控制时关闭屏幕--turn-screen-offSwitch开启后控制设备时将自动关闭设备屏幕控制结束关闭屏幕--power-off-on-closeSwitch开启后停止控制设备将自动关闭设备屏幕控制时禁用自动亮屏--no-power-onSwitch开启后控制设备时将禁用自动亮屏展示触摸点--show-touchesSwitch仅在物理设备上展示配置后的生成逻辑由scrcpyParameter完成所有开关型参数仅在开启非false时才会进入命令行数值型如屏幕超时在未设置时留空以沿用设备默认此外偏好模型还支持scrcpyAppend追加字段允许高级用户手动补充任意 scrcpy 参数为上述标准选项之外的场景留出扩展空间。小结scrcpy 的设备控制参数是一组启动时修改、退出时恢复的轻量设备操作能力覆盖保持唤醒、屏幕超时、关屏/亮屏、触摸痕迹、断电策略与启动应用六大场景。使用时需重点留意三点--stay-awake仅对有线连接有效、--screen-off-timeout与 Android 系统值存在秒/毫秒单位差异、--start-app的/?前缀语义。在 Escrcpy 中这些能力全部映射为图形化偏好项由 偏好存储 统一拼接为命令行参数并经 scrcpy 中间件 执行——既保留了命令行方式的全部灵活性又提供了零门槛的界面入口。【免费下载链接】escrcpy Display and control your Android device graphically with scrcpy.项目地址: https://gitcode.com/GitHub_Trending/es/escrcpy创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考