文件传输
概述
在桌面运行 Spck CLI 时,它充当桌面文件系统与手机本地项目之间的同步枢纽。两侧在 Spck Editor 文件管理器中并排显示——手机的本地项目在左侧,桌面文件作为已连接的远程服务器——您可以使用标准的复制粘贴命令在任意方向复制文件或整个文件夹。
无需 AirDrop、蓝牙、USB 数据线或第三方云存储。传输通过 WebSocket 连接进行端到端加密,当两台设备在同一网络时,数据仅在本地 Wi-Fi 内流转。
工作原理
CLI 将桌面目录作为远程服务器项目暴露在 Spck Editor 的文件管理器中。保存在手机上的本地项目存储在应用的本地存储中。Spck Editor 将两者视为同等的项目位置,因此在单个项目内有效的所有文件操作(包括复制粘贴)也可以在它们之间进行。
手机(本地存储) 桌面(通过 CLI)
──────────────────────── ─────────────────────
my-project/ ↔ ~/projects/my-project/
├── index.html ├── index.html
├── style.css ├── style.css
└── assets/ └── assets/
└── logo.png └── logo.png
目录以递归方式传输——内部所有文件都会被复制,子目录在目标位置自动创建。
从桌面到移动设备
当您想将文件从电脑带到手机时使用此方式——例如离线工作、与只有移动应用的同事共享项目,或在设备上保存工作快照。
-
在桌面启动 CLI,指向您要传输的文件夹:
spck --root ~/projects -
用相机应用扫描二维码并在 Spck Editor 中打开链接,连接手机。
-
在 Spck Editor 的项目面板中,桌面文件夹显示为远程服务器项目。
-
在远程项目中长按您想要的文件或文件夹,然后点击复制。
-
导航到手机上的本地项目(或通过新建项目创建新项目)。
-
长按目标文件夹,然后点击粘贴。
文件从桌面下载并保存到手机的本地存储。
从移动设备到桌面
当您想将手机上的工作发送回桌面时使用此方式——例如外出编辑后,或整合在设备上创建的项目。
-
在桌面启动 CLI,指向您希望文件保存的文件夹:
spck --root ~/Desktop/from-phone -
扫描二维码连接手机。
-
在 Spck Editor 中,打开手机上包含要发送文件的本地项目。
-
长按您想要的文件或文件夹,然后点击复制。
-
在项目面板中导航到远程桌面项目。
-
长按目标文件夹,然后点击粘贴。
文件从手机本地存储读取,并通过 CLI 写入桌面。
传输整个项目
您可以通过一次粘贴操作复制整个项目文件夹。在文件树中长按项目根目录并选择复制,然后导航到目标位置并粘贴。整个目录树(包括所有子目录中的所有文件)都会被传输。
适用于以下场景:
- 在进行重大更改前将移动项目备份到桌面
- 从现有桌面代码库初始化手机上的新项目
- 将多个设备上的工作合并到一处
提示
文件大小限制
默认最大文件大小为每个文件 10 MB。要传输图像、压缩包或编译后的二进制文件等较大文件,请在 CLI 配置中增加限制:
{
"filesystem": {
"maxFileSize": "200MB"
}
}
详情请参见 CLI 配置。
传输速度
速度完全取决于您的本地 Wi-Fi 或网络连接。对于大型目录,传输逐文件进行,因此总体吞吐量与文件数量成比例。在典型的家庭 Wi-Fi 网络上,以文本为主的小型项目(数百个文件)可在几秒内完成。
安全性
所有传输均通过 WSS(WebSocket Secure)加密,每个请求都使用每次会话的密钥签名。中继服务器在设备间转发消息,但不会接收未加密的内容。详情请参见 CLI 安全。
同时运行多个传输
CLI 暴露单个根目录。要同时从多个位置传输,请在不同终端中运行独立的 CLI 实例:
# 终端 1:暴露 ~/projects
spck --root ~/projects
# 终端 2:暴露 ~/Documents
spck --root ~/Documents
每个实例生成自己的二维码和连接,两个远程服务器同时出现在 Spck Editor 的项目面板中。