在 macOS 和安卓或其他 MTP 设备之间传输文件一直是一场噩梦。市面上有一些 MTP 文件传输应用,但它们要么价格昂贵,要么用户界面和体验很差。谷歌官方为 macOS 提供的"Android File Transfer"应用存在诸多问题和限制,比如无法传输大于 4GB 的文件、频繁断开连接、无法重命名安卓/MTP 设备上的文件夹或文件等。其他大多数在线应用则使用 WiFi 或 ADB 协议传输文件,这是一个极其耗时的过程。
无数次搜索寻找解决这些问题的应用却一无所获,这让我倍感焦虑。于是,我决定自己开发一个应用,帮助我们实现从 macOS 到安卓/MTP 设备的流畅无忧的文件传输过程。本着回馈社区的初衷,我们都可以在今后免费使用这个应用。
OpenMTP 3.0 采用了全新的 MTP 内核,该内核是从零开始编写的。它在中低端设备上可实现 30 到 40 MB/s 的文件复制速度,在高端设备上可达到 100 到 120 MB/s。这个全新强大的 MTP 内核以 A. P. J. Abdul Kalam 博士 的名字命名。
欢迎查看我为构建 Kalam 内核而编写的 Go 包:github.com/ganeshrvel/go-mtpx。欢迎提交 PR。
Kalam 内核更新,包括新设备支持、修复和稳定性改进。macOS Big Sur (11.0) 及以上版本将收到上述更新Kalam 内核支持。这些过时机器上只能继续使用"旧版"MTP 模式Intel 和 ARM64 机器发布更新# 新版本: brew install openmtp --cask # 旧版本: brew cask install openmtp


| 命令 | 键盘快捷键 |
|---|---|
| 删除 | <kbd>backspace</kbd> |
| 新建文件夹 | <kbd>command (⌘)</kbd>+<kbd>n</kbd> |
| 复制 | <kbd>command (⌘)</kbd>+<kbd>c</kbd> |
| 复制到队列 | <kbd>command (⌘)</kbd>+<kbd>shift</kbd>+<kbd>c</kbd> |
| 粘贴 | <kbd>command (⌘)</kbd>+<kbd>v</kbd> |
| 刷新 | <kbd>command (⌘)</kbd> +<kbd>r</kbd> |
| 返回上级文件夹 | <kbd>command (⌘)</kbd>+<kbd>b</kbd> |
| 全选 | <kbd>command (⌘)</kbd>+<kbd>a</kbd> |
| 重命名 | <kbd>command (⌘)</kbd>+<kbd>d</kbd> |
| 切换标签 | <kbd>command(⌘)</kbd>+<kbd>1</kbd> |
| 打开 | <kbd>enter</kbd> |
| 向左导航 | <kbd>left</kbd> |
| 向右导航 | <kbd>right</kbd> |
| 向上导航 | <kbd>up</kbd> |
| 向下导航 | <kbd>down</kbd> |
| 向前选择多个项目 (网格视图) | <kbd>shift</kbd>+<kbd>left</kbd> |
| 向后选择多个项目 (网格视图) | <kbd>shift</kbd>+<kbd>right</kbd> |
| 向前选择多个项目 (列表视图) | <kbd>shift</kbd>+<kbd>up</kbd> |
| 向后选择多个项目 (列表视图) | <kbd>shift</kbd>+<kbd>down</kbd> |
| 选择多个项目 (使用鼠标) | <kbd>command (⌘)</kbd>+<kbd>click</kbd> 或 <kbd>shift</kbd>+<kbd>click</kbd> |
要求:Node.js v16、Git 和 Yarn 包管理器
$ git clone https://github.com/ganeshrvel/openmtp.git $ cd openmtp # 安装 yarn npm install -g yarn # 安装 sentry cli npm -g i @sentry/cli
$ yarn
新克隆的项目可能会抛出"未定义状态"错误。运行以下命令一次以解决该问题。
# 对于 Mac 和 Linux $ UPGRADE_EXTENSIONS=1 npm run dev # 对于 Windows $ set UPGRADE_EXTENSIONS=1 && npm run dev
# 开发环境 $ yarn dev # 预生产环境 $ yarn start
# 在终端运行 $ "/path/to/OpenMTP.app/Contents/MacOS/OpenMTP" --remote-debugging-port=6363
localhost:63636363 检查 OpenMTPAPPLEID: <Apple 开发者账号用户名>APPLE_APP_SPECIFIC_PASSWORD: <应用特定密码>
APPLE_TEAM_ID: <Apple 团队 ID>
SENTRY_URL: https://sentry.io/SENTRY_ORG: <Sentry 组织名称>SENTRY_PROJECT: <Sentry 项目>SENTRY_TOKEN_ID: <Sentry 认证令牌>
event:admin, event:read, member:read, org:read, project:read, project:releases, team:readGITHUB_TOKEN: 个人访问令牌
内容 - (读取和写入代码的访问权限)admin:gpg_key, admin:public_key, repo, user, workflowCSC_LINK:
默认钥匙串 -> 登录 -> 我的证书Developer ID Application
Developer ID Application 的搜索结果,请从这里创建一个:Apple 开发者证书Developer ID ApplicationDeveloper ID Application: <用户名> (XXXYYYZZZ)Mac Developer ID Application: <用户名>
Mac Developer ID Application: <用户名>Mac Developer ID Application: <用户名>Mac Developer ID Application: <用户名>CERTIFICATE_PRIVATE_KEY.p12CSC_KEY_PASSWORD,请记下base64 -i CERTIFICATE_PRIVATE_KEY.p12 -o CERTIFICATE_PRIVATE_KEY.txtCERTIFICATE_PRIVATE_KEY.txt 文件的全部内容CSC_LINK 字段的值CSC_KEY_PASSWORD 是上一步中的密码CODEMAGIC_AUTH_TOKEN_ID: <CodeMagic API 令牌>
CODEMAGIC_INTEL_X64_WORKFLOW_ID_PROD: <生产环境 codeMagic 工作流 ID>
codemagic.yaml 中找到相关的工作流 ID(通常是 macos-intel-x64-build-prod)CODEMAGIC_INTEL_X64_WORKFLOW_ID_DEV: <开发环境 codeMagic 工作流 ID>
codemagic.yaml 中找到相关的工作流 ID(通常是 macos-intel-x64-build-dev)PUBLISH_PROD_REPOSITORY: <用于发布生产应用的仓库>PUBLISH_DEV_REPOSITORY: <用于发布开发应用的仓库>CODEMAGIC_PUBLISH_PROJECT_ID: <Codemagic intel 项目 ID>PUBLISH_EMAIL: 接收发布更新的电子邮件地址设置 代码签名 以构建、本地打包和发布应用。
macOS 应用公证(非 macOS 构建请跳过此部分)
APPLEID 和 APPLE_APP_SPECIFIC_PASSWORDsecurity add-generic-password -a "<apple-开发者账号用户名>" -w <应用特定密码> -s "APPLE_APP_SPECIFIC_PASSWORD"
Sentry
npm install -g @sentry/wizard sentry-wizard --integration electron # 上传调试信息 # 每次升级electron.js版本时运行: node sentry-symbols.js sentry-cli login
打包 说明:https://www.electron.build/code-signing
$ export GH_TOKEN="<github token>"
# 针对本地平台 $ yarn package # 针对多个平台 $ yarn package-all
https://github.com/electron-react-boilerplate/electron-react-boilerplate/issues/400
https://github.com/electron-react-boilerplate/electron-react-boilerplate/issues/118
https://github.com/electron-react-boilerplate/electron-react-boilerplate/issues/108
# 对于Mac和Linux $ UPGRADE_EXTENSIONS=1 npm run dev # 对于Windows $ set UPGRADE_EXTENSIONS=1 && npm run dev
Speech framework is not compatible with macOS < 10.15yarn install将抛出npm-rebuild错误package.json中移除node-mac-permissions依赖webpack/config.base.js中的default.plugins添加ignorePlugin行
new webpack.IgnorePlugin({ resourceRegExp: /^(node-mac-permissions)$/u }),NODE_MAC_PERMISSIONS_MIN_OS常量定义了显示macOS使用访问权限弹出窗口所需的最低操作系统版本特别感谢CodeMagic和Kevin Suhajda赞助他们的CI/CD虚拟机,使应用程序发布变得更加流畅和容易。🎊🎊 请查看他们的产品部分以了解更多。
感谢Ayushi Bothra女士为文档和页面做出贡献。
应用程序logo由Shubhendu Mitra贡献。请务必在Behance上查看他的更多作品。
感谢Vladimir Menshakov开发的android-file-transfer-linux(MTP旧版内核)
特别感谢@yennsarah、@h0tk3y、@riginoommen、@AjithKumarvm、@kiranshaji555、Dick Cowan、Kjell Dankert、Thorolf E.R. Weißhuhn以及所有其他帮助我测试应用程序的社区成员。
这个应用程序基于https://github.com/ganeshrvel/electron-react-redux-advanced-boilerplate构建,该项目是https://github.com/electron-react-boilerplate/electron-react-boilerplate的一个经过大量修改的分支。
应用程序中使用的图标由flaticon、good-ware和kiranshastry制作,遵循CC 3.0 BY许可。
"未找到图片"图标由Phonlaphat Thongsriphong制作。
如果您有兴趣修复问题并直接贡献代码,请参阅指南。
帮助我保持应用程序对所有人免费开放。
如有任何问题,请随时通过ganeshrvel@outlook.com与我联系。
OpenMTP | Android File Transfer for macOS 根据MIT许可证发布。
版权所有 © 2018-至今 Ganesh Rathinavel


免费创建高清无水印Sora视频
Vora是一个免费创建高清无水印Sora视频的AI工具


最适合小白的AI自动化工作流平台
无需编码,轻松生成可复用、可变现的AI自动化工作流

大模型驱动的Excel数据处理工具
基于大模型交互的表格处理系统,允许用户通过对话方式完成数据整理和可视化分析。系统采用机器学习算法解析用户指令,自动执行排序、公式计算和数据透视等操作,支持多种文件格式导入导出。数据处理响应速度保持在0.8秒以内,支持超过100万行数据的即时分析。


AI辅助编程,代码自动修复
Trae是一种自适应的集成开发环境(IDE),通过自动化和多元协作改变开发流程。利用Trae,团队能够更快速、精确地编写和部署代码,从而提高编程效率和项目交付速度。Trae具备上下文感知和代码自动完成功能,是提升开发效率的理想工具。


AI论文写作指导平台
AIWritePaper论文写作是一站式AI论文写作辅助工具,简化了选题、文献检索至论文撰写的整个过程。通过简单设定,平台可快速生成高质量论文大纲和全文,配合图表、参考文献等一应俱全,同时提供开题报告和答辩PPT等增值服务,保障数据安全,有效提升写作效率和论文质量。


AI一键生成PPT,就用博思AIPPT!
博思AIPPT,新一代的AI生成PPT平台,支持智能生成PPT、AI美化PPT、文本&链接生成PPT、导入Word/PDF/Markdown文档生成PPT等,内置海量精美PPT模板,涵盖商务、教育、科技等不同风格,同时针对每个页面提供多种版式,一键自适应切换,完美适配各种办公场景。


AI赋能电商视觉革命,一站式智能商拍平台
潮际好麦深耕服装行业,是国内AI试衣效果最好的软件。使用先进AIGC能力为电商卖家批量提供优质的、低成本的商拍图。合作品牌有Shein、Lazada、安踏、百丽等65个国内外头部品牌,以及国内10万+淘宝、天猫、京东等主流平台的品牌商家,为卖家节省将近85%的出图成本,提升约3倍出图效率,让品牌能够快速上架。


企业专属的AI法律顾问
iTerms是法大大集团旗下法律子品牌,基于最先进的大语言模型(LLM)、专业的法律知识库和强大的智能体架构,帮助企业扫清合规障碍,筑牢风控防线,成为您企业专属的AI法律顾问。


稳定高效的流量提升解决方案,助力品牌曝光
稳定高效的流量提升解决方案,助力品牌曝光


最新版Sora2模型免费使用,一键生成无水印视频
最新版Sora2模型免费使用,一键生成无水印视频