Как выпустить приложение macos, написанное с помощью флаттера - PullRequest
0 голосов
/ 02 февраля 2020

У меня есть приложение, созданное в Flutter для macOS. Но я не могу найти способ кодировать пакет Application.app. Я искал inte rnet и не мог найти правильный способ сделать это.

Ответы [ 2 ]

0 голосов
/ 02 февраля 2020

Вы можете просто установить свою подпись в проекте Xcode, используя пользовательский интерфейс или xcconfig, как и в любом стандартном приложении macOS. В процессе подписания нет ничего специфичного для Flutter c.

0 голосов
/ 02 февраля 2020

Процедура очень проста. Но это нигде не документировано должным образом.

  1. Получите сертификат от Xcode. Самый простой шаг - использовать Xcode, добавить новый сертификат. Подробнее об этом читайте здесь https://help.apple.com/xcode/mac/current/# / dev154b28f09
  2. После получения сертификата вам необходимо найти его удостоверение, чтобы подписать ваше приложение. security find-identity -p codesigning запустите это в терминале и скопируйте ha sh, которое выдает против имени сертификата, которое вы только что создали.
  3. создайте версию выпуска вашего приложения, запустив flutter build macOS в папке вашего проекта
  4. cd в папке, где создано ваше приложение. теперь запустите codesign --deep --force --verbose --sign "<identity>" Application.app Поставьте ха sh, который мы скопировали на шаге 2, вместо (Сохраните цитаты).

    Вы должны увидеть что-то вроде этого Application.app: signed bundle with Mach-O thin (x86_64) [com.application]

  5. Проверьте подпись codesign --verify -vvvv Application.app и spctl -a -vvvv Application.app

Первый даст вам что-то вроде

Application.app: valid on disk
Application.app: satisfies its Designated Requirement

Второй даст вам что-то вроде

Application.app: accepted
source=Developer ID
origin=Developer ID Application: Spreaker Inc (xxx)

Подробнее об этом https://pracucci.com/atom-electron-signing-mac-app.html

Flutter Desktop великолепен. Но, исходя из Android фона разработчика, я не знал, как войти в ма c. Надеюсь, это кому-нибудь поможет.

...