字体预加载
Home
avatar

翻过墙

翻过墙

LocalSend-跨平台文件传输工具

LocalSend 是一个免费、开源、跨平台的文件传输工具,无需互联网连接,通过局域网即可实现设备间的文件快速传输。支持 Windows、macOS、Linux、Android、iOS 等多个平台,界面简洁美观,传输速度快,是替代 AirDrop、微信文件传输助手等工具的绝佳选择。

主要特性

🌐 跨平台支持

  • 桌面端: Windows、macOS、Linux
  • 移动端: Android、iOS
  • Web端: 支持浏览器访问

⚡ 快速传输

  • 基于局域网传输,速度取决于网络环境
  • 支持大文件传输,无文件大小限制
  • 支持文件夹批量传输

🔒 安全可靠

  • 无需互联网连接,数据不会上传到第三方服务器
  • 支持加密传输
  • 开源代码,安全透明

🎨 界面美观

  • 现代化UI设计
  • 深色/浅色主题切换
  • 响应式布局,适配各种屏幕

项目地址

LocalSend - Github LocalSend - 官网

使用教程

1. 下载安装

访问 LocalSend 官网GitHub Releases 下载对应平台的安装包。

2. 基本使用

发送文件

  1. 打开 LocalSend
  2. 点击”发送”按钮
  3. 选择要传输的文件或文件夹
  4. 等待接收端扫描二维码或输入连接码

接收文件

  1. 打开 LocalSend
  2. 点击”接收”按钮
  3. 扫描发送端的二维码或输入连接码
  4. 选择保存位置,开始接收

3. 高级功能

自定义端口

# 启动时指定端口
localsend --port 53317

命令行使用

# 发送文件
localsend send /path/to/file

# 接收文件到指定目录
localsend receive --save-dir /path/to/save

技术架构

核心组件

// 主要依赖
dependencies:
  flutter: ^3.10.0
  http: ^1.1.0
  path_provider: ^2.1.1
  permission_handler: ^11.0.1
  qr_flutter: ^4.1.0

网络协议

LocalSend 使用 HTTP/HTTPS 协议进行文件传输:

// 服务器配置
class ServerConfig {
  static const int defaultPort = 53317;
  static const String defaultHost = '0.0.0.0';
  static const bool enableHttps = false;
}

文件处理

// 文件传输核心逻辑
class FileTransfer {
  Future<void> sendFile(File file, String targetIp) async {
    final request = http.MultipartRequest(
      'POST',
      Uri.parse('http://$targetIp:$port/upload'),
    );
    
    request.files.add(
      await http.MultipartFile.fromPath('file', file.path),
    );
    
    final response = await request.send();
    // 处理响应...
  }
}

部署说明

从源码编译

# 克隆项目
git clone https://github.com/localsend/localsend.git
cd localsend

# 安装依赖
flutter pub get

# 编译运行
flutter run

Docker 部署

FROM ubuntu:22.04

# 安装依赖
RUN apt-get update && apt-get install -y \
    curl \
    wget \
    && rm -rf /var/lib/apt/lists/*

# 下载 LocalSend
RUN wget https://github.com/localsend/localsend/releases/latest/download/LocalSend-1.0.0-linux-x64.deb

# 安装
RUN dpkg -i LocalSend-1.0.0-linux-x64.deb

# 暴露端口
EXPOSE 53317

# 启动命令
CMD ["localsend"]

常见问题

Q: 为什么扫描二维码无法连接?

A: 确保发送端和接收端在同一个局域网内,防火墙没有阻止 LocalSend 的网络访问。

Q: 传输速度很慢怎么办?

A: 检查网络环境,确保设备间网络连接稳定,可以尝试关闭防火墙或杀毒软件。

Q: 支持哪些文件格式?

A: LocalSend 支持传输任何类型的文件,包括文档、图片、视频、音频等。

Q: 如何设置传输密码?

A: 在发送文件时,可以设置访问密码,接收端需要输入正确密码才能接收文件。

总结

LocalSend 是一个非常优秀的开源文件传输工具,具有以下优势:

  • 完全免费开源
  • 跨平台支持
  • 无需互联网
  • 传输速度快
  • 界面美观
  • 安全可靠

无论是个人用户还是企业用户,LocalSend 都是一个值得推荐的文件传输解决方案。它解决了传统文件传输工具的痛点,为用户提供了更好的使用体验。

LocalSend 项目持续活跃开发中,新功能不断添加,建议关注项目更新。如果遇到问题,可以在 GitHub Issues 中反馈或参与社区讨论。

LocalSend 文件传输 开源 工具 免费 跨平台 局域网