Mac App Store への公開ガイド
このガイドでは以下の情報を提供しています。
- macOS で Electron アプリを署名する方法;
- Mac App Store (MAS) に Electron アプリを提出する方法;
- MAS ビルドの制限。
要件
Electron アプリを署名するには、まず以下のツールをインストールする必要があります。
- Xcode 11 以降。
- @electron/osx-sign npm モジュール。
また、Apple Developer アカウントを登録し Apple Developer Program に参加する必要があります。
Electron アプリを署名する
Electron アプリは Mac App Store や外部サイトで頒布できます。 それぞれの方法ごとに、署名やテストの方法が異なります。 This guide focuses on distribution via Mac App Store.
以下の手順で、Apple から証明書を取得する方法、Electron アプリに署名する方法、テストする方法を説明します。
証明書の取得
最も簡単に署名証明書を取得するには、Xcode を使用して以下 のようします。
- Xcode を開いて設定の "Accounts" を開きます。
- Apple アカウントでサインインします。
- チームを選択して "Manage Certificates" をクリックします。
- 署名証明書シートの左下にある追加ボタン (+) をクリックし、以下の証明書を追加します。
- "Apple Development"
- "Apple Distribution"
"Apple Development" 証明書は、Apple Developer ウェブサイトで登録したマシン上で、開発およびテスト用のアプリに署名するために使用します。 登録方法については、プロビジョニングプロファイルの準備 で説明します。
"Apple Development" 証明書で署名したアプリは Mac App Store に提出できません。 このためには、代わりに "Apple Distribution" 証明書でアプリに署名する必要があります。 ただし注意として、"Apple Distribution" 証明書で署名したアプリはそのまま実行できません。実行できるようにするには Apple が再署名する必要がありますが、これは Mac App Store からダウンロードした後でのみ可能になります。
その他の証明書
証明書の種類が他にもあることにお気づきでしょう。
"Developer ID Application" 証明書は、アプリを Mac App Store 以外で頒布する前の署名に使用します。
"Developer ID Installer" および "Mac Installer Distribution" の証明書は、アプリ自体ではなく "Mac Installer Package" の署名に使用します。 ほとんどの Electron アプリは Mac Installer Package を使用しないので、通常は必要ありません。
証明書の種類の完全なリストは こちら で見られます。
Apps signed with "Apple Development" and "Apple Distribution" certificates can only run under App Sandbox, so they must use the MAS build of Electron. しかし、"Developer ID Application" 証明書にはこの制限がないため、この証明書で署名されたアプリは Electron の通常ビルドと MAS ビルドのどちらでも使用できます。
従来の証明書の名称
Apple は過去数年の間に証明書の名称を変更しており、古いドキュメントを読んでいると古い名称が出てくるかもしれません。一部のユーティリティも未だに古い名称を使用していることがあります。
- "Apple Distribution" 証明書は、"3rd Party Mac Developer Application" や "Mac App Distribution" という名称でもありました。
- "Apple Development" 証明書は、"Mac Developer" や "Development" という名称でもありました。