即刻发送,使用 PairDrop
浏览器中的本地文件共享工具。
灵感源自Apple的AirDrop。
Snapdrop的分支项目。
https://github.com/schlagmichdoch/pairdrop/issues/new?assignees=&labels=bug&projects=&template=bug_report.md&title=
https://github.com/schlagmichdoch/pairdrop/issues/new?assignees=&labels=enhancement&projects=&template=feature_request.md&title=
特性
适用于所有平台的本地网络文件共享工具。
- 实用的跨平台类AirDrop解决方案
- 通过对等连接向同一本地网络中的设备发送图片、文档或文本
- 互联网传输
- 加入临时公共房间,轻松通过互联网传输文件
- 网页应用
- 适用于所有搭载现代浏览器的设备
想从手机向笔记本发送文件?
想与使用Android和iOS的朋友分享原始画质照片?
想在Linux系统之间对等分享私人文件?
与基于的 https://github.com/RobinLinus/snapdrop 的差异
https://github.com/schlagmichdoch/pairdrop#differences-to-snapdrop
已配对设备和公共房间 — 互联网传输
- 通过已配对设备或进入临时公共房间实现互联网文件传输
- 支持在复杂网络环境(公共Wi-Fi、公司网络、iCloud Private Relay、***等)中连接设备
- 支持连接到移动热点上的设备
- 位于本地网络之外且处于NAT后的设备会通过PairDrop TURN服务器自动连接
- 显示本地网络中的设备、同一公共房间内的设备以及之前已配对的设备
持久设备配对
始终连接到已知设备
- 通过6位代码或QR码配对设备
- 已配对设备通过共享密钥相互识别,不受本地网络限制
- 配对状态持久化,重新打开PairDrop后仍可找到已配对设备
- 可轻松编辑和取消配对设备
临时公共房间
在复杂网络环境中或通过互联网连接其他设备
- 通过5位字母代码或QR码进入公共房间
- 进入公共房间可临时连接本地网络之外的设备
- 同一公共房间内的所有设备相互可见
- 公共房间为临时性质,关闭PairDrop即退出所有房间
https://github.com/RobinLinus/snapdrop/issues/560
- 文件在请求被接受后开始传输,传输完成后将自动下载(如支持)
- 多个文件将打包为ZIP文件下载
- 在Android和iOS上可通过"分享"菜单进行下载、分享或保存到相册
- 支持多文件同时传输,并显示总体进度指示器
直接从分享菜单、上下文菜单或命令行发送文件或文本
- 从Ubuntu的Nautilus上下文菜单直接发送文件
- 从Windows上下文菜单直接发送文件
- 从iOS的"分享"菜单直接发送
- 从Android的"分享"菜单直接发送
- 通过命令行界面直接发送
其他变更
- 可修改显示名称,便于区分设备
- https://github.com/RobinLinus/snapdrop/pull/534
- https://github.com/RobinLinus/snapdrop/pull/413
- 文件传输时关闭PairDrop会发出警告
- 支持同时在多个标签页打开PairDrop(感谢https://github.com/willstott101%EF%BC%89
- https://github.com/RobinLinus/snapdrop/pull/455%EF%BC%88%E6%84%9F%E8%B0%A2https://github.com/victorwads%EF%BC%89
- 在深色或浅色模式切换后可恢复为自动/系统主题
- 纯Node.js实现(感谢https://github.com/Bellisario%EF%BC%89
- 错误时自动重启(感谢https://github.com/KaKi87%EF%BC%89
- 在本地网络托管PairDrop时(如树莓派):https://github.com/RobinLinus/snapdrop/pull/558
- 自行托管PairDrop时,可设置自定义STUN/TURN服务器
- 多语言支持
在 Hosted Weblate 上参与PairDrop翻译
基于以下优秀技术构建:
- 原生HTML5 / JS ES6 / CSS 3前端
- WebRTC / WebSockets
- Node.js 后端
- 渐进式Web应用(PWA) 统一功能
- IndexedDB API 存储处理
- https://gildas-lormeau.github.io/zip.js/ 库
- https://github.com/bryc/code/blob/master/jshash/experimental/cyrb53.js 超快速哈希函数
- https://github.com/richtr/NoSleep.js 显示休眠控制,添加唤醒锁(MIT许可证)
- https://github.com/alexcorvi/heic2any HEIC/HEIF转PNG/GIF/JPEG(MIT许可证)
- Weblate 基于Web的本地化工具
- BrowserStack 本项目使用BrowserStack进行测试
常见问题
使用Docker或Node.js自行托管实例。
支持
PairDrop是自由软件,且永远都是。
如果您觉得它有用并想支持自由开源软件,请考虑通过上方按钮***。
我已承担域名和服务器费用,您的支持将帮助我创建和维护优秀的软件。
非常感谢您的贡献!
贡献
欢迎https://github.com/schlagmichdoch/pairdrop/issues/new/choose%E6%88%96https://github.com/schlagmichdoch/pairdrop/pulls%EF%BC%8C%E8%AF%B7%E9%81%B5%E5%BE%AA%E8%B4%A1%E7%8C%AE%E6%8C%87%E5%8D%97%E3%80%82