Skip to content

Navigation Menu

Sign in
Appearance settings

Search code, repositories, users, issues, pull requests...

Provide feedback

We read every piece of feedback, and take your input very seriously.

Saved searches

Use saved searches to filter your results more quickly

Appearance settings

306026185/PcAndroidScpGui

Open more actions menu

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

8 Commits
8 Commits
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

PcAndroidScpGui(电脑 <-> 安卓)

License: MIT

Windows 电脑与 Android(Termux)之间的高速双向传文件工具,底层基于 SSH/SFTP

实测在 wifi6 环境下,传输文件速度至少可达理论速度 80%。 开发者实测,传输5GB大小的文件耗时1m7s

详情视频:https://www.bilibili.com/video/BV1pZZtB8ED5/

Android 端:Termux 运行 sshd 作为服务端

Windows 端:WPF GUI 程序(SSH.NET)作为客户端,提供配对免密 + 上传/下载

screen

功能亮点

  • 首次配对后免密(自动写入手机 ~/.ssh/authorized_keys
  • 上传/下载进度条 + 实时平均速度 + ETA(预计剩余时间)
  • 自动记住上次连接信息(IP/端口/用户名/默认目录),下次打开自动回填
  • 手机端桌面小组件一键启动/停止 sshd(Termux:Widget)

下载(Release)

请到 GitHub Releases 下载:

  • Windows 程序:PcAndroidScpGui-*.zip
  • 手机端脚本与windows工具:android-termux-scripts.zip

运行要求:Windows 需要安装 .NET 8 Desktop Runtime (x64)

快速开始

  1. 手机安装 Termux 和 Termux:Widget
  2. Termux 执行安装依赖:pkg install openssh
  3. 设置一次密码(用于首次配对):pkg install termux-auth 然后 passwd
  4. 授权存储:termux-setup-storage
  5. 电脑端运行 PcAndroidScpGui.exe,填写 IP/端口/用户名,点击“首次配对”完成免密

下面是完整配置以及安装流程。

目录结构

tools/windows/
  adb_安装TermuxWidget脚本.bat:一键把手机端脚本推送到手机 Download(Android 16 下会自动 fallback)
  启动PcAndroidScpGui.ps1:开发期一键启动(dotnet run)

android/termux/
  SSH-启动并显示信息.sh:手机端启动 sshd 并输出 IP/指纹
  SSH-停止.sh:手机端停止 sshd

src/PcAndroidScpGui/:Windows WPF 源码

依赖

Android(手机端)

  • Termux
  • Termux:Widget(一般自带)
  • Termux 内安装 OpenSSH:pkg install openssh

termux-api 不强制安装。

没装 termux-api 时,脚本会自动降级为 echo 输出,不会报错。

Windows(电脑端)

  • Windows 10/11
  • .NET SDK(建议 8.0+)
  • ADB(可选):如果电脑没有 adb,adb_安装TermuxWidget脚本.bat 会自动下载并配置(谷歌官方源下载,可能需要科学上网)

从 0 开始(配置完成后传输文件从第八步直接开始)

第 0 步:安装 App

手机上安装:Termux

第 1 步:Termux 安装 OpenSSH

pkg update
pkg install openssh

第 2 步:设置一次登录密码(首次配对要用)

注意:命令是 passwd,不是 password.

如果提示找不到 passwd,需要先安装 termux-auth.

pkg install termux-auth
passwd

第 3 步:授权 Termux 访问手机存储

termux-setup-storage

如果提示要重建 ~/storage,输入 y(不会删除真实存储内容)。

第 4 步:用 ADB 推送手机端脚本(电脑操作)

电脑运行:tools/windows/adb_安装TermuxWidget脚本.bat

脚本会把文件推到手机的 Download 文件夹下:

/sdcard/Download/SSH-start.sh
/sdcard/Download/SSH-stop.sh

第 5 步:把脚本安装到 Termux:Widget 目录(手机操作)

打开 Termux,分别输入:

mkdir -p ~/.shortcuts
cp /sdcard/Download/SSH-start.sh ~/.shortcuts/
cp /sdcard/Download/SSH-stop.sh ~/.shortcuts/
chmod +x ~/.shortcuts/SSH-start.sh ~/.shortcuts/SSH-stop.sh

第 6 步:桌面添加 Widget

桌面长按空白处 -> 小组件(部分国内 OS 显示为安卓小组件或其它)-> Termux:Widget

添加至桌面后,你会看到两个按钮:SSH-start.sh、SSH-stop.sh

第 7 步:启动手机端 sshd

点击 SSH-start.sh

提示:Termux:Widget 运行脚本后 60s 自动关闭界面。

可以在 Termux 里查看最后一次启动信息(以下为查看信息命令):

cat ~/ssh_widget.last
tail -n 80 ~/ssh_widget.log

第 8 步:启动电脑端 GUI 并首次配对

直接运行发布的 PcAndroidScpGui.exe

按界面填写:

  • 手机 IP:建议填同一 Wi‑Fi 下的局域网 IP(常见 192.168.x.x / 10.x.x.x / 172.16-31.x.x)
    • 注意:如果 Termux 中读取到的手机 IP 和真实 IP 不相符,请使用真实 IP
    • 路径:手机设置 -> WLAN -> 网络详情(或 Wi‑Fi 图标)-> IP 地址
  • 端口:8022
  • 用户名:手机端 SSH-start.sh 会显示用户名(也可在 Termux 执行 whoami
  • 默认目录:/data/data/com.termux/files/home/storage/shared/Download/

然后点击“首次配对”,输入手机端 passwd 设置的密码,按提示确认主机指纹。

后续连接无需输入密钥,点击连接测试即可。

第 9 步:传输文件

  • 上传:电脑 -> 手机 Download
  • 下载:手机 Download -> 电脑 C:\Users\<你>\Downloads

电脑端小功能

  • 自动回填上次连接信息:IP/端口/用户名/默认目录会保存到 %AppData%\PcAndroidScpGui\settings.json,下次启动自动填充。
  • 传输速度与 ETA:进度条右侧会显示实时平均速度与预计剩余时间。

常见问题(FAQ)

Q1:Android 16 下为什么 ADB 写 /data/data/com.termux/... 失败?

这是应用沙盒限制(非 root 下不允许)。所以脚本会 fallback 到 /sdcard/Download/,再由 Termux 自己复制进 ~/.shortcuts.

Q2:termux-setup-storage 提示重建 ~/storage

输入 y 即可,它只会重建链接结构,不会删除真实存储文件。

Q3:Windows 端提示“尚未配对/私钥不存在”

先点“首次配对”,成功后才会生成私钥并写入手机 authorized_keys。

Q4:连不上手机

  • 确认手机已点 SSH-start.sh,sshd 正在运行
  • 确认手机和电脑在同一 Wi‑Fi
  • 确认端口是 8022
  • 如果有防火墙/热点隔离,需放行局域网连接

许可证

MIT

About

电脑手机快速互传

Resources

Stars

Watchers

Forks

Releases

Packages

Contributors

Languages

Morty Proxy This is a proxified and sanitized view of the page, visit original site.