Передача файлов между MacOS и Android или любыми другими устройствами MTP всегда была кошмаром. Есть несколько приложений MTP -передачи файлов, которые доступны в Интернете, но большинство из них либо слишком дороги, либо поставляются с плохим пользовательским интерфейсом/UX. Официальное приложение «Android File Transfer» для MacOS из Google поставляется с ошибками, бесчисленными ограничениями, некоторые из которых включают в себя - неспособность передавать файлы, более 4 ГБ, частые отключения, невозможно переименовать папки или файлы на устройствах Android/MTP. Большинство других приложений, доступных в Интернете, используют протокол Wi-Fi или ADB для передачи файлов, что является чрезвычайно трудоемким процессом.
Бесчисленные поиски, чтобы найти приложение для решения этих проблем и не найти его, сделали меня беспокойным. Итак, я сделал скачок и решил создать для нас приложение, которое может помочь нам иметь плавный и беспроблемный процесс передачи файлов от MacOS на устройства Android/MTP. Созданный с целью возвращения сообществу, мы все можем использовать это приложение бесплатно в этой жизни.
OpenMTP 3.0 имеет новое ядро MTP, и оно было написано с царапины. Он обещает скорость копии файла от 30 до 40 МБ/с на устройствах с низким и средним диапазоном и от 100 до 120 МБ/с на устройствах более высокого уровня. Все новое и мощное ядро MTP названо в честь доктора APJ Абдул Калам
Проверьте пакет Go, который я написал для создания ядра Kalam: github.com/ganeshrvel/go-mtpx. Не стесняйтесь поднимать PRS.
Kalam , которые включают новые опоры устройств, исправления, улучшения стабильности. MacOS Big Sur (11.0) или выше получат вышеупомянутые обновленияKalam на MacOS 10.13 (OS X El High Sierra) и ниже. Только режим MTP «Legacy» будет продолжать работать над этими устаревшими машинами.Intel , так и ARM64 # newer versions:
brew install openmtp --cask
# older versions:
brew cask install openmtp

| Командование | Комплект клавиш |
|---|---|
| Удалить | Backspace |
| Новая папка | Команда (⌘) + n |
| Копия | Команда (⌘) + c |
| Копировать в очередь | Команда (⌘) + shift + c |
| Вставка | Команда (⌘) + V |
| Обновлять | Команда (⌘) + r |
| Папка вверх | Команда (⌘) + b |
| Выберите все | Команда (⌘) + a |
| Переименовать | Команда (⌘) + D |
| Переключить вкладку | Команда (⌘) + 1 |
| Открыть | входить |
| Перейдите налево | левый |
| Навигация вправо | верно |
| Перейти вверх | вверх |
| Перейти вниз | вниз |
| Выберите несколько элементов вперед (в сетке) | Сдвиг + слева |
| Выберите несколько элементов назад (в сетке) | Сдвиг + Право |
| Выберите несколько элементов вперед (в просмотре списка) | Shift + Up |
| Выберите несколько элементов назад (в просмотре списка) | Shift + Down |
| Выберите несколько элементов (с мышью) | Команда (⌘) + нажмите или сдвиньте + нажмите |
Требования: node.js v16, git and yarn package Manager
$ git clone https://github.com/ganeshrvel/openmtp.git
$ cd openmtp
# install yarn
npm install -g yarn
# install sentry cli
npm -g i @sentry/cli$ yarnСвежий клон может добавить неопределенную ошибку состояния . Запустите следующие команды один раз, чтобы решить проблему.
# For Mac and Linux
$ UPGRADE_EXTENSIONS=1 npm run dev
# For Windows
$ set UPGRADE_EXTENSIONS=1 && npm run dev # Development
$ yarn dev
# Pre-production
$ yarn start
# On terminal run
$ " /path/to/OpenMTP.app/Contents/MacOS/OpenMTP " --remote-debugging-port=6363localhost:63636363APPLEID : <Apple developer account username>APPLE_APP_SPECIFIC_PASSWORD : <App-Specific Password>APPLE_TEAM_ID : <Apple Team ID>SENTRY_URL : https://sentry.io/SENTRY_ORG : <Sentry Organization Name>SENTRY_PROJECT : <Sentry Project>SENTRY_TOKEN_ID : <Sentry Auth Token>event:admin, event:read, member:read, org:read, project:read, project:releases, team:readGITHUB_TOKEN : Personal access tokenContents - (Read and Write access to code)admin:gpg_key, admin:public_key, repo, user, workflowCSC_LINK :Default Keychains в левомDeveloper ID Application в топ -панели поискаDeveloper ID Application , для организации создайте его отсюда: сертификаты разработчика AppleDeveloper ID Application в топ -панели поискаDeveloper ID Application: <User Name> (XXXYYYZZZ)Mac Developer ID Application: <User Name>Mac Developer ID Application: <User Name>Mac Developer ID Application: <User Name>Mac Developer ID Application: <User Name>CERTIFICATE_PRIVATE_KEY.p12CSC_KEY_PASSWORD , обратите внимание на этоbase64 -i CERTIFICATE_PRIVATE_KEY.p12 -o CERTIFICATE_PRIVATE_KEY.txtCERTIFICATE_PRIVATE_KEY.txtCSC_LINKCSC_KEY_PASSWORD - это пароль с вышеуказанного шагаCODEMAGIC_AUTH_TOKEN_ID : <CodeMagic API Token>CODEMAGIC_INTEL_X64_WORKFLOW_ID_PROD : <Prod codeMagic workflow id>codemagic.yaml (в основном macos-intel-x64-build-prod )CODEMAGIC_INTEL_X64_WORKFLOW_ID_DEV : <Dev codeMagic workflow id>codemagic.yaml (в основном macos-intel-x64-build-dev )PUBLISH_PROD_REPOSITORY : <Repository to publish the production app>PUBLISH_DEV_REPOSITORY : <Repository to publish the dev app>CODEMAGIC_PUBLISH_PROJECT_ID : <Codemagic intel project id>PUBLISH_EMAIL : Email address to receive the updates on publishНастройка подписания кода для сборки, пакета (локально) и опубликовать приложение.
Приложение нотаризация для macOS (пропустите этот раздел для сборки Non MacOS)
APPLEID и APPLE_APP_SPECIFIC_PASSWORD в .env filesecurity add-generic-password -a " <apple-developer-account-username> " -w < app-specific-password > -s " APPLE_APP_SPECIFIC_PASSWORD "Часовой
npm install -g @sentry/wizard
sentry-wizard --integration electron
# Upload Debug Information
# Everytime the electron.js version is upgraded run:
node sentry-symbols.js
sentry-cli loginИнструкции по упаковке : https://www.electron.build/code-signing
$ export GH_TOKEN= " <github token> " # For local platform
$ yarn package
# For multiple platforms
$ yarn package-allЭлектронно-реакционная и ящика/электрон-реакт-Boilerplate#400
Электронно-реакционная и ящика/электрон-реакт-Boilerplate#118
Электронно-реакционная и ящика/электрон-реакт-Boilerplate#108
# For Mac and Linux
$ UPGRADE_EXTENSIONS=1 npm run dev
# For Windows
$ set UPGRADE_EXTENSIONS=1 && npm run devSpeech framework is not compatible with macOS < 10.15yarn install будет выбросить ошибку NPM-Rebuildnode-mac-permissions из package.jsondefault.plugins в файле webpack/config.base.jsnew webpack.IgnorePlugin({ resourceRegExp: /^(node-mac-permissions)$/u }),NODE_MAC_PERMISSIONS_MIN_OS constant определяет минимальную версию ОС, которая требуется для показа)https://stackoverflow.com/questions/58358449/notarizing-electron-apps-throws-you-must-first-sign-the-relevant-contracts-on
https://stackoverflow.com/questions/58358449/notarizing-electron-apps-throws-you-must-first-sign-the-relevant-contracts-on
Особая благодарность Codemagic и Kevin Suhajda за спонсирование их виртуальных машин CI/CD, что делает приложение более упорядоченным и гораздо проще. ?? Проверьте раздел их продуктов для получения дополнительной информации.
Специальный крик @codyjung за добавление поддержки устройств Fujifilm и Garmin.
Спасибо г -же Аюши Бору за вклад в документацию и страницы.
Логотип приложения был внесен Shubhendu Mitra. Обязательно ознакомьтесь с большим количеством его работ на Behance.
Спасибо Владимиру Меншакову за Android-File-Transfer-Linux (ядро MTP Legacy)
Выкрикивайте @yennsarah, @h0tk3y, @riginoommen, @ajithkumarvm, @kiranshaji555, Дик Коуэн, Кьелл Данкерт, Торольф эр Вайсхун и всех других членов сообщества, которые помогли мне проверить приложение.
Это приложение было построено на 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.
Значок «Нет изображения» была сделана Фонлафат Тонгсрифхонг.
Если вы заинтересованы в решении проблем и внесении непосредственного внесения непосредственно в базу кода, пожалуйста, смотрите руководящие принципы.
Помогите мне держать приложение бесплатным и открытым для всех.
Пожалуйста, не стесняйтесь обращаться ко мне по адресу [email protected]
OpenMTP | Передача файла Android для MacOS выпускается по лицензии MIT.
Copyright © 2018-Present Ganesh Rathinavel