GoForum🌐 V2EX

写了个 macOS 原生 Android 文件传输工具 SwiftMTP,求测试反馈 👋

wang93wei · 2026-01-22 01:01 · 0 次点赞 · 1 条回复

最近因为要在 Mac 和 Android 手机之间传文件,发现目前可以用的工具要么是开源且丑的 whoozle/android-file-transfer-linux ,要么是好久没更新的 Google 开发的 Android File Transfer 。

为什么写这个?

  • Android File Transfer 不支持最新的 ARM 版本,且仍然使用 Intel 转译,体验很差
  • whoozle/android-file-transfer-linux 虽然开源,但界面简陋,而且需要自行编译 ARM 版本,对普通用户很不友好

于是决定自己撸一个开源工具——SwiftMTP 。折腾不到一个月终于能用了 🎉

关于我(先坦白)

我完全不会 Swift 和苹果软件开发,所以目前代码都是 AI 辅助生成的。正因为如此,可能存在 UI 样式异常或其他 bug 。如果你在使用过程中遇到任何问题,请务必及时反馈,我会尽力修复!

主要功能

  • 自动检测连接的 Android 设备( MTP 模式)
  • 文件浏览,支持文件夹导航
  • 文件下载/上传,支持拖放
  • 支持大文件传输(>4GB )
  • 批量选择和下载
  • 多语言支持(简中、英语、日语、韩语、俄语、法语、德语)
  • 显示设备存储空间

技术栈

  • 前端:SwiftUI + Combine ( MVVM 架构)
  • 后端:Go 1.22 + go-mtpx + libusb-1.0
  • 桥接:CGO ( Swift ↔ C ↔ Go )

目前已知限制

  • 仅支持 ARM 版本( Apple 芯片)
  • 要求系统版本在 macOS 26 或更高
  • 仅支持单个设备
  • 暂不支持文件夹上传(单文件上传)
  • 传输速度受 MTP 协议限制
  • UI 可能存在样式异常(因为我不会 Swift 😅)

下载方式

GitHub: https://github.com/wang93wei/SwiftMTP

可以从源码构建,或者直接下载安装包。

注意: 因为没有苹果开发者签名,所以可能需要其他方式方可使用:

如果看到 “SwiftMTP can’t be opened because it is from an unidentified developer”,尝试以下方法:

  1. 右键点击应用 → 选择「打开」
  2. 系统设置 → 隐私与安全性 → 允许 SwiftMTP
  3. 或在终端运行:xattr -cr /Applications/SwiftMTP.app

求反馈

  • 你的设备能否正常检测?
  • 传输速度如何?
  • UI 有没有样式问题?
  • 有没有遇到什么 bug ?
  • 有什么功能建议?

项目刚起步,代码写得可能不够优雅,欢迎提 issue 或 PR !

效果图

1 条回复
hronro · 2026-01-22 01:21
#1

我在用 OpenMTP ,用的 Electron 技术栈写的,感觉也还行。当然如果有原生 App 并且成熟稳定的话,我肯定是更愿意用原生 App 的。

添加回复
你还需要 登录 后发表回复

登录后可发帖和回复

登录 注册
主题信息
作者: wang93wei
发布: 2026-01-22
点赞: 0
回复: 0