DevTrendsDeveloper trends
Accent color

knifelemon /

droidline

手机装一个应用,扫码和电脑配对一次,之后电脑上的 Python、Node.js、C# 代码或命令行就能通过 Wi-Fi 操作手机:按文字找到按钮点下去、输入文字、截图、读取通知。不用开 USB 调试,不用 root,免费开源。 能做什么 在真机上测试自己的应用,包括跨应用的流程,比如登录时去短信里拿验证码(Android 14 及以下,15 起系统会隐藏通知里的验证码) 读取通知并处理,比如银行到账通知一来,就自动把订单标记为已收款 同…

LanguageGoDTSoftware developmentDTAgent extensionDTCLIDTMCP serviceDTAndroidDTLinuxDTmacOSDTCursorOriginalaccessibility-serviceOriginaladb-alternativeOriginalai-agentsOriginalandroid-automation

About

手机装一个应用,扫码和电脑配对一次,之后电脑上的 Python、Node.js、C# 代码或命令行就能通过 Wi-Fi 操作手机:按文字找到按钮点下去、输入文字、截图、读取通知。不用开 USB 调试,不用 root,免费开源。 能做什么 在真机上测试自己的应用,包括跨应用的流程,比如登录时去短信里拿验证码(Android 14 及以下,15 起系统会隐藏通知里的验证码) 读取通知并处理,比如银行到账通知一来,就自动把订单标记为已收款 同一个脚本同时跑在多部手机上。手机可以和电脑在同一个 Wi-Fi,也可以用移动数据通过隧道或自建中继连回来,全程端到端加密 交给 AI:自带 MCP 服务器,Claude、ChatGPT、Cursor 这类 AI 可以看手机屏幕并操作 命令行也能用,比如 droidline touch text "设置" 怎么做的 电脑端是 Go 写的服务器,手机端是 Kotlin 写的无障碍服务。找元素这一步直接在手机上完成,不像 adb + uiautomator 那样每次都把整个界面导出成 XML 文件再读回电脑。在 Galaxy S23 Ultra 上按文字找一个元素,10 次中位数是 16 ms,Appium UiAutomator2 是 100 ms,adb + uiautomator 是 2,368 ms。 所有命令写在一份规格文件里,Python、Node.js、C# SDK、命令行和 MCP 工具都从它生成,所以 touch 在哪里都叫 touch。 踩过的一个坑:一开始内置了开关 Wi-Fi、飞行模式的命令,做法是打开系统设置去点按钮。结果每家厂商、每个 Android 版本、每种语言的按钮文字都不一样,光是三星的韩文系统就把飞行模式叫“搭乘飞机模式”,小屏手机上要点的那一项还在屏幕外面。最后把这些命令删了,改成文档里的示例,按自己手机上的文字改一下就能用。关 Wi-Fi 这种会断开连接的步骤,可以放进 batch 交给手机离线执行,重新连上后再把结果交回来。 下载 应用和电脑端: (Android 9 及以上;电脑支持 Windows、macOS、Linux) SDK:pip install droidline、npm install droidline、dotnet add package Droidline 文档:

Discovery history

  1. HelloGitHub·用户投稿

    Oct 10, 2026 · 1 observations

  2. 阮一峰周刊·用户投稿

    Oct 10, 2026 · 1 observations

  3. 阮一峰周刊·正刊推荐

    Oct 16, 2026 · 1 observations

Discuss this product