272 lines
12 KiB
Markdown
272 lines
12 KiB
Markdown
<!-- WEHUB_ZH_README -->
|
||
> [!NOTE]
|
||
> 本文档由 WeHub 基于上游 README 翻译整理,属于社区翻译,非官方中文文档。
|
||
> [English](./README.en.md) · [原始项目](https://github.com/localsend/localsend) · [上游 README](https://github.com/localsend/localsend/blob/HEAD/README.md)
|
||
> 原作者、版权与许可证归属以原始项目及本仓库 LICENSE 文件为准。
|
||
|
||
# LocalSend
|
||
|
||
[![CI 状态][ci-badge]][ci-workflow]
|
||
[![翻译][translate-badge]][translate-link]
|
||
[![打包状态][packaging-badge]][packaging-link]
|
||
|
||
[ci-badge]: https://github.com/localsend/localsend/actions/workflows/ci.yml/badge.svg
|
||
[ci-workflow]: https://github.com/localsend/localsend/actions/workflows/ci.yml
|
||
[translate-badge]: https://hosted.weblate.org/widget/localsend/app/svg-badge.svg
|
||
[translate-link]: https://hosted.weblate.org/engage/localsend/
|
||
[packaging-badge]: https://repology.org/badge/tiny-repos/localsend.svg
|
||
[packaging-link]: https://repology.org/project/localsend/versions
|
||
|
||
[主页][homepage] • [Discord][discord] • [GitHub][github] • [Codeberg][codeberg]
|
||
|
||
[English (Default)](README.md) • [Español](readme_i18n/README_ES.md) • [فارسی](readme_i18n/README_FA.md) • [Filipino](readme_i18n/README_PH.md) • [Français](readme_i18n/README_FR.md) • [Indonesia](readme_i18n/README_ID.md) • [Italiano](readme_i18n/README_IT.md) • [日本語](readme_i18n/README_JA.md) • [ភាសាខ្មែរ](readme_i18n/README_KM.md) • [한국어](readme_i18n/README_KO.md) • [Polski](readme_i18n/README_PL.md) • [Português Brasil](readme_i18n/README_PT_BR.md) • [Русский](readme_i18n/README_RU.md) • [ภาษาไทย](readme_i18n/README_TH.md) • [Türkçe](readme_i18n/README_TR.md) • [Українська](readme_i18n/README_UK.md) • [Tiếng Việt](readme_i18n/README_VI.md) • [中文](readme_i18n/README_ZH.md)
|
||
|
||
[homepage]: https://localsend.org
|
||
[discord]: https://discord.gg/GSRWmQNP87
|
||
[github]: https://github.com/localsend/localsend
|
||
[codeberg]: https://codeberg.org/localsend/localsend
|
||
|
||
LocalSend 是一款免费、开源的应用,让你无需互联网连接,即可通过本地网络与附近设备安全地共享文件和消息。
|
||
|
||
- [关于](#关于)
|
||
- [赞助商](#赞助商)
|
||
- [截图](#截图)
|
||
- [下载](#下载)
|
||
- [工作原理](#工作原理)
|
||
- [快速开始](#快速开始)
|
||
- [贡献](#贡献)
|
||
- [翻译](#翻译)
|
||
- [Bug 修复与改进](#bug-修复与改进)
|
||
- [故障排除](#故障排除)
|
||
- [构建](#构建)
|
||
- [Android](#android)
|
||
- [iOS](#ios)
|
||
- [macOS](#macos)
|
||
- [Windows](#windows)
|
||
- [Linux](#linux)
|
||
|
||
## 关于
|
||
|
||
LocalSend 是一个跨平台应用,通过 REST API 和 HTTPS 加密实现设备间的安全通信。与其他依赖外部服务器的即时通讯应用不同,LocalSend 无需互联网连接或第三方服务器,是本地通信的快速可靠方案。
|
||
|
||
## 赞助商
|
||
|
||
浏览器测试由以下平台提供
|
||
|
||
<a href="https://www.testmuai.com/?utm_medium=sponsor&utm_source=localsend" target="_blank">
|
||
<img src="https://localsend.org/img/sponsors/tesmu.svg" style="vertical-align: middle;" width="250" height="45" />
|
||
</a>
|
||
|
||
## 截图
|
||
|
||
<img src="https://localsend.org/img/screenshot-iphone.webp" alt="iPhone 截图" height="300"/> <img src="https://localsend.org/img/screenshot-pc.webp" alt="PC 截图" height="300"/>
|
||
|
||
## 下载
|
||
|
||
[](https://repology.org/project/localsend/versions)
|
||
|
||
建议从应用商店或包管理器下载本应用,因为应用本身没有自动更新功能。
|
||
|
||
| Windows | macOS | Linux | Android | iOS | Fire OS |
|
||
|-------------------------|-------------------------|--------------------|----------------|---------------|------------|
|
||
| [Winget][] | [App Store][] | [Flathub][] | [Play Store][] | [App Store][] | [Amazon][] |
|
||
| [Scoop][] | [Homebrew][] | [Nixpkgs][] | [F-Droid][] | | |
|
||
| [Chocolatey][] | [DMG 安装程序][latest] | [Snap][] | [APK][latest] | | |
|
||
| [EXE 安装程序][latest] | | [AUR][] | | | |
|
||
| [便携版 ZIP][latest] | | [TAR][latest] | | | |
|
||
| | | [DEB][latest] | | | |
|
||
| | | [AppImage][latest] | | | |
|
||
|
||
详细了解[分发渠道][]。
|
||
|
||
> [!CAUTION]
|
||
> **非官方 MSIX 预览版:** 你可以从 [localsend.ob-buff.dev](https://localsend.ob-buff.dev/). 试用最新提交的构建版本。稳定性不做保证,所有自定义代码调整均列在该网站上。
|
||
|
||
[windows store]: https://www.microsoft.com/store/apps/9NCB4Z0TZ6RR
|
||
[app store]: https://apps.apple.com/us/app/localsend/id1661733229
|
||
[play store]: https://play.google.com/store/apps/details?id=org.localsend.localsend_app
|
||
[f-droid]: https://f-droid.org/packages/org.localsend.localsend_app
|
||
[amazon]: https://www.amazon.com/dp/B0BW6MP732
|
||
[winget]: https://github.com/microsoft/winget-pkgs/tree/master/manifests/l/LocalSend/LocalSend
|
||
[scoop]: https://scoop.sh/#/apps?s=0&d=1&o=true&q=localsend&id=fb88113be361ca32c0dcac423cb4afdeda0b0c66
|
||
[chocolatey]: https://community.chocolatey.org/packages/localsend
|
||
[homebrew]: https://formulae.brew.sh/cask/localsend
|
||
[flathub]: https://flathub.org/apps/details/org.localsend.localsend_app
|
||
[nixpkgs]: https://search.nixos.org/packages?show=localsend
|
||
[snap]: https://snapcraft.io/localsend
|
||
[aur]: https://aur.archlinux.org/packages/localsend-bin
|
||
[latest]: https://github.com/localsend/localsend/releases/latest
|
||
[distribution channels]: https://github.com/localsend/localsend/blob/main/CONTRIBUTING.md#distribution
|
||
|
||
**兼容性**
|
||
|
||
| 平台 | 最低版本 | 说明 |
|
||
|----------|-----------------|-----------------------------------------------------------------------------------------------------------------------------|
|
||
| Android | 5.0 | - |
|
||
| iOS | 12.0 | - |
|
||
| macOS | 11 Big Sur | 请使用 OpenCore Legacy Patcher 2.0.2(参见 [#1005](https://github.com/localsend/localsend/issues/1005#issuecomment-2449899384))) |
|
||
| Windows | 10 | 最后一个支持 Windows 7 的版本为 v1.15.4。未来可能会有新版针对 Windows 7 的向后移植。 |
|
||
| Linux | 不适用 | 依赖:Gnome:`xdg-desktop-portal` 和 `xdg-desktop-portal-gtk`,KDE:`xdg-desktop-portal` 和 `xdg-desktop-portal-kde` |
|
||
|
||
## 设置
|
||
|
||
大多数情况下,LocalSend 开箱即用。不过,如果你在发送或接收文件时遇到问题,可能需要配置防火墙以允许 LocalSend 在本地网络上通信。
|
||
|
||
| 流量类型 | 协议 | 端口 | 操作 |
|
||
|--------------|----------|-------|--------|
|
||
| 入站 | TCP、UDP | 53317 | 允许 |
|
||
| 出站 | TCP、UDP | 任意 | 允许 |
|
||
|
||
同时请确保在路由器上禁用 AP 隔离。通常默认已禁用,但部分路由器可能启用了该功能(尤其是访客网络)。
|
||
更多信息请参见[故障排除](#troubleshooting)。
|
||
|
||
**便携模式**
|
||
|
||
(自 v1.13.0 起引入)
|
||
|
||
在与可执行文件相同的目录下创建一个名为 `settings.json` 的文件。
|
||
该文件可以为空。
|
||
应用将使用此文件存储设置,而非默认位置。
|
||
|
||
**启动时隐藏**
|
||
|
||
(自 v1.15.0 起更新)
|
||
|
||
要启动时隐藏应用(仅显示在系统托盘中),请使用 `--hidden` 标志(例如:`localsend_app.exe --hidden`)。
|
||
|
||
在 v1.14.0 及更早版本中,若设置了 `autostart` 标志且隐藏设置已启用,则应用启动时隐藏。
|
||
|
||
## 工作原理
|
||
|
||
LocalSend 使用一种安全的通信协议,允许设备通过 REST API 相互通信。所有数据均通过 HTTPS 安全发送,TLS/SSL 证书在每个设备上即时生成,从而确保最大安全性。
|
||
USD 预算:$0/$3;剩余 $3
|
||
|
||
关于该协议的更多信息,请参见 [LocalSend 协议](https://github.com/niclas425/LocalSend/blob/main/README.md)。
|
||
|
||
关于 LocalSend 协议的更多信息,请参见[文档](https://github.com/localsend/protocol).)。
|
||
|
||
## 开始使用
|
||
|
||
如要通过源代码编译 LocalSend,请按以下步骤操作:
|
||
|
||
1. [直接](https://flutter.dev))安装 Flutter,或使用 [fvm](https://fvm.app)) 安装(参见[所需版本](.fvmrc))
|
||
2. 安装 [Rust](https://www.rust-lang.org/tools/install))
|
||
3. 克隆 `LocalSend` 仓库
|
||
4. 运行 `cd app` 进入应用目录
|
||
5. 运行 `flutter pub get` 下载依赖
|
||
6. 运行 `flutter run` 启动应用
|
||
|
||
> [!NOTE]
|
||
> LocalSend 目前需要较旧版本的 Flutter(在 [.fvmrc](.fvmrc) 中指定),因此所需版本与(系统级)已安装的 Flutter 版本不匹配可能导致构建问题。
|
||
> 为让开发环境更加一致,LocalSend 使用 [fvm](https://fvm.app)) 管理项目的 Flutter 版本。
|
||
> 安装 `fvm` 后,请运行 `fvm flutter` 而不是 `flutter`。
|
||
|
||
## 贡献
|
||
|
||
我们欢迎任何有兴趣帮助改进 LocalSend 的人参与贡献。如果你想贡献,有几种方式可以参与:
|
||
|
||
### 翻译
|
||
|
||
你可以帮助将 LocalSend 翻译成其他语言。我们使用 [Weblate](https://hosted.weblate.org/projects/localsend/app)) 平台来管理翻译。
|
||
|
||
或者,你也可以通过复刻本仓库并手动添加翻译来贡献。
|
||
|
||
翻译文件位于 [app/assets/i18n](https://github.com/localsend/localsend/tree/main/app/assets/i18n)) 目录。编辑 `_missing_translations_<locale>.json` 或 `strings_<locale>.i18n.json` 文件来添加或更新翻译。
|
||
|
||
<a href="https://hosted.weblate.org/engage/localsend/">
|
||
<img src="https://hosted.weblate.org/widget/localsend/app/multi-auto.svg" alt="翻译状态" />
|
||
</a>
|
||
|
||
**_注意:_** 带有 `@` 标记的字段不需要翻译;它们不会在应用中以任何方式使用,仅是文件的说明性文本或为译者提供上下文。
|
||
|
||
### 错误修复与改进
|
||
|
||
- **错误修复:** 如果发现错误,请创建拉取请求,并附上对问题的清晰描述及修复方法。
|
||
- **改进:** 有改进 LocalSend 的想法?请先创建一个议题,讨论改进的必要性。
|
||
|
||
更多信息请参见[贡献指南](https://github.com/localsend/localsend/blob/main/CONTRIBUTING.md).)。
|
||
|
||
## 故障排除
|
||
|
||
| 问题 | 平台(发送方) | 平台(接收方) | 解决方案 |
|
||
|-------------------|----------------|----------------|---------------------------------------------------------------------------------------------------------------------------------------|
|
||
| 设备不可见 | 任意 | 任意 | 请确保在路由器上禁用 AP 隔离。如果启用,设备之间的连接将被禁止。 |
|
||
| 设备不可见 | 任意 | Windows | 请确保将网络配置为"专用"网络。当网络配置为公用时,Windows 可能会施加更多限制。 |
|
||
| 设备不可见 | macOS、iOS | 任意 | 可以尝试在操作系统设置的"隐私"中切换"本地网络"权限。 |
|
||
| 速度过慢 | 任意 | 任意 | 使用 5 GHz 频段;在两台设备上均禁用加密 |
|
||
| 速度过慢 | 任意 | Android | 已知问题。https://github.com/flutter-cavalry/saf_stream/issues/4 |
|
||
|
||
## 构建
|
||
|
||
以下命令仅供维护者使用。请确保在 `app` 目录下运行。
|
||
|
||
### Android
|
||
|
||
传统 APK
|
||
|
||
```bash
|
||
flutter build apk
|
||
```
|
||
|
||
用于 Google Play 的 AppBundle
|
||
|
||
```bash
|
||
flutter build appbundle
|
||
```
|
||
|
||
### iOS
|
||
|
||
```bash
|
||
flutter build ipa
|
||
```
|
||
|
||
### macOS
|
||
|
||
```bash
|
||
flutter build macos
|
||
```
|
||
|
||
### Windows
|
||
|
||
**传统方式**
|
||
|
||
```bash
|
||
flutter build windows
|
||
```
|
||
|
||
**本地 MSIX 应用**
|
||
|
||
```bash
|
||
flutter pub run msix:create
|
||
```
|
||
|
||
**商店就绪**
|
||
|
||
```bash
|
||
flutter pub run msix:create --store
|
||
```
|
||
|
||
### Linux
|
||
|
||
**传统方式**
|
||
|
||
```bash
|
||
flutter build linux
|
||
```
|
||
|
||
**AppImage**
|
||
|
||
```bash
|
||
appimage-builder --recipe AppImageBuilder.yml
|
||
```
|
||
|
||
**Snap**
|
||
|
||
说明见 [localsend/snap/README.md](https://github.com/localsend/snap/blob/main/README.md))
|
||
|
||
## 贡献者
|
||
|
||
<a href="https://github.com/localsend/localsend/graphs/contributors">
|
||
<img src="https://contrib.rocks/image?repo=localsend/localsend" alt="LocalSend 贡献者"/>
|
||
</a>
|