
跨平台开源文件传输工具 LocalSend4 步跑起来不联网也能传文件【免费下载链接】localsendAn open-source cross-platform alternative to AirDrop项目地址: https://gitcode.com/GitHub_Trending/lo/localsendLocalSend 是一款开源的跨平台类 AirDrop本地文件传输应用只要设备处在同一局域网内手机、电脑、平板之间就能安全互传文件和消息全程不依赖互联网也不需要任何第三方服务器数据始终留在你的网络里。它解决什么问题一句话结论把传文件要联网、要过云的流程换成了局域网点对点直连。原理上它由发起方在本地起一个服务接收方通过网络发现该服务走 REST API HTTPS 加密完成传输。所以速度快、不丢数据、不出网适合家庭、办公室这类信任网络环境。仓库长什么样 先看四层结构顶层目录看着多其实按职责分就四层先记住这个骨架再往里钻localsend/ ├── app/ # Flutter 主程序界面、页面、国际化资源 ├── packages/ # Rust 核心库及 localsend_isolates 等可复用包 ├── cli/ # 命令行版终端里直接收发文件 ├── server/ # 独立服务端程序 └── support/ # 构建脚本与多语言 README入口层app/lib/main.dart是应用唯一入口app/lib/pages/下是全部页面。业务逻辑层真正的传输引擎在packages/core/Rust 实现负责设备发现、传输协议与加密。资源与国际化层app/assets/i18n/存放 60 多种语言文件如en.json、zh-CN.json。工程化配置顶层pubspec.yaml与Cargo.toml都是 workspace 文件统一编排各子包。如何快速跑起来 最小路径前置只需装好 Flutter 和 Rust——版本已由.fvmrc和rust-toolchain.toml锁死不用自己纠结。git clone https://gitcode.com/GitHub_Trending/lo/localsend cd localsend/app flutter pub get flutter run✅ 启动时main.dart里的main()先调preInit(args)构建依赖容器再挂载主界面默认落在接收页签Futurevoid main(ListString args) async { final container await preInit(args); runApp(RefenaScope.withContainer( container: container, child: TranslationProvider(child: const LocalSendApp()), )); }⚠️ 版本是关键.fvmrc锁定 Flutter 3.41.9用系统自带的高版本 Flutter 容易踩构建错误建议照 README 的说法装 fvm之后统一用fvm flutter命令。动手改一句文案 ✏️我们可以从最短的改动路径开始试一下改国际化文案打开app/assets/i18n/en.json把顶层appName的值从LocalSend改成LocalSend Hi。文案会由 slang 生成到 Dart 代码里改完必须重新生成一次cd app flutter pub run build_runner build --delete-conflicting-outputs再执行flutter run应用标题就变了。接着可以对zh-CN.json做同样的修改观察跟随系统语言切换的效果。常见疑问 下一步做什么 为什么改了语言文件没生效忘了重新生成。先生成再运行改动才会编译进字符串代码。CLI 版本能直接用吗能。cli/是独立 Rust 程序终端里即可收发文件无需启动图形界面。加密逻辑在哪看看packages/core/src/crypto/证书、令牌、随机数都在那几份文件里。接下来读什么想懂界面就从app/lib/pages/home_page.dart入手想懂传输协议直接进packages/core/src/http/server/顺藤摸瓜。【免费下载链接】localsendAn open-source cross-platform alternative to AirDrop项目地址: https://gitcode.com/GitHub_Trending/lo/localsend创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考