一个使用 SwiftUI 开发的原生 macOS 应用,通过生成分享链接和二维码在局域网内快速共享文件。
- 📤 快速分享 - 拖放或选择文件即可生成分享链接
- 📁 任意文件类型 - 支持所有格式,无限制
- 📱 二维码分享 - 自动生成二维码,手机扫码即可下载
- 🔗 MD5 短链接 - 简洁易记的分享链接
- 🌐 HTTP 服务器 - 内置 HTTP 服务器,无需额外配置
- 📋 网页文件列表 - 提供网页版文件列表,方便批量下载
- 🎨 现代界面 - 使用 SwiftUI 构建的原生 macOS 界面
- 💬 Toast 提示 - 优雅的操作反馈
- ⚡ 限速传输 - 支持自定义传输速度限制,可选512KB/s至10MB/s预设或自定义速度
查看完整功能列表:FEATURES.md
- macOS 13.0 或更高版本
- Xcode 14.0 或更高版本(用于编译)
- 使用 Xcode 打开
LanShare.xcodeproj - 选择目标设备(Mac)
- 点击运行按钮或按
Cmd + R
# 快速构建(推荐)
make build-simple
# 完整打包(包含 DMG 安装包)
make build
# 构建并运行
make run
# 安装到 Applications 文件夹
make install
# 清理构建文件
make clean或直接运行脚本:
# 快速构建
./build-simple.sh
# 完整打包
./build.sh- 在"分享文件"页面,拖放或选择要分享的文件
- 自动弹出分享窗口,显示二维码和分享链接
- 其他设备扫描二维码或访问链接即可下载
- 在"共享列表"页面查看所有正在共享的文件
- 点击"分享"按钮可重新查看二维码和链接
- 点击"删除"按钮可停止分享该文件
- 复制文件列表链接,在浏览器中查看所有共享文件
- 在主界面顶部可以看到"限速传输"开关
- 打开开关后可以设置传输速度限制
- 提供快速预设:512KB/s、1MB/s、5MB/s、10MB/s
- 也可以手动输入自定义速度(单位:KB/s)
- 实时显示当前限速设置
- 手机/平板:扫描二维码直接下载
- 电脑:在浏览器中输入分享链接
- 批量下载:访问文件列表页面,查看所有共享文件
- SwiftUI - 用户界面框架
- Network Framework - HTTP 服务器实现
- CoreImage - 二维码生成
- Combine - 响应式编程
LanShare/
├── LanShareApp.swift # 应用入口
├── ContentView.swift # 主界面(包含文件卡片和二维码)
├── Models/
│ └── SharedFile.swift # 共享文件模型
├── Managers/
│ └── NetworkManager.swift # HTTP 服务器和网络管理
├── Info.plist # 应用配置
└── LanShare.entitlements # 权限配置
应用需要以下权限:
- 网络服务器 - 用于启动 HTTP 服务器
- 网络客户端 - 用于网络通信
- 文件访问 - 用于读取要分享的文件
- 确保接收设备与 Mac 在同一局域网内
- 防火墙可能会阻止连接,请允许应用访问网络
- 首次运行时系统会请求网络访问权限,请点击允许
- 默认端口为 8080,如被占用可在代码中修改
- 文件分享期间请保持应用运行
- 限速传输功能
- 支持文件夹分享
- 添加密码保护
- 自定义端口设置
- 分享链接有效期设置
- 下载统计和日志
- 支持 HTTPS
项目包含自定义设计的应用图标:
- 📁 图标文件位于
Assets/目录 - 🎨 提供 SVG 源文件和生成脚本
- 📖 详细说明请查看 Assets/README.md
生成图标:
./generate-icon.sh项目提供了三个脚本:
-
build-simple.sh - 快速构建脚本
- 仅构建应用,不签名
- 适合本地测试和开发
- 构建速度快
- 输出:
build/LanShare.app
-
build.sh - 完整打包脚本
- 构建、归档、导出应用
- 创建 DMG 安装包
- 适合发布和分发
- 输出:
build/LanShare.dmg
-
test-build.sh - 验证构建配置
- 检查项目文件和配置
- 不执行实际构建
- 用于快速验证环境
构建完成后,文件位于 build 目录:
build/
├── LanShare.app # 应用程序(build-simple.sh)
├── export/
│ └── LanShare.app # 导出的应用(build.sh)
└── LanShare.dmg # DMG 安装包(build.sh)
- macOS 13.0 或更高版本
- Xcode 14.0 或更高版本
- Command Line Tools
MIT License
