5

macOS用のFlutterで構築したフラッターアプリがあります。しかし、Application.app パッケージをコード署名する方法がわかりません。私はインターネットを検索しましたが、適切な方法を見つけることができませんでした。

4

2 に答える 2

12

手順は非常に簡単です。しかし、それはどこにも適切に文書化されていません。

  1. Xcode から証明書を取得します。最も簡単な手順は、Xcode を使用して新しい証明書を追加することです。詳細については、こちらをご覧ください https://help.apple.com/xcode/mac/current/#/dev154b28f09
  2. 証明書を取得したら、アプリに署名するための ID を見つける必要があります。 security find-identity -p codesigningこれを端末で実行し、作成したばかりの証明書名に対して提供されるハッシュをコピーします。
  3. flutter build macOSプロジェクトフォルダーで 実行して、フラッターアプリのリリースバージョンをビルドしますUPDATE flutter build macOS はもう機能しません。flutter build macos代わりに試してください。を参照してください。コメントで指摘してくれてありがとう@Bartosz。
  4. cdアプリが作成されたフォルダーに移動します。codesign --deep --force --verbose --sign "<identity>" Application.app (Keep the quotes) の代わりにステップ 2 で処理したハッシュを指定します。

このようなものが表示されるはずですApplication.app: signed bundle with Mach-O thin (x86_64) [com.application]

  1. 署名codesign --verify -vvvv Application.appを確認し、spctl -a -vvvv Application.app

最初のものはあなたに次のようなものを与えるでしょう

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

2番目のものはあなたに次のようなものを与えるでしょう

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 Dev のバックグラウンドを持っていたので、Mac にサインインする方法がわかりませんでした。それが誰かを助けることを願っています。

于 2020-02-02T10:53:05.063 に答える