7

開発者 ID を使用した Mac アプリへの署名についていくつか質問があります。

まず、GateKeeper を活用したプロジェクトに取り組んでいます。そのため、開発者 ID でアプリに署名 (?) する必要があります。

  1. 開発者 ID で署名するには、プロビジョニング プロファイルが必要ですか? ビルド設定タブでは、開発者 ID 証明書は としてマークされていIdentities without Provisioning Profilesます。Mac Provision Portal を見回しても、証明書を提出するのではなく、開発者 ID 証明書に一致するプロビジョニング プロファイルを生成する場所が見つかりませんでした。開発者 ID で署名するには、プロビジョニング プロファイルが必要ですか?

  2. アプリをアーカイブした後、オーガナイザーで [開発者 ID 署名付きアプリケーションのエクスポート] を選択すると、開発者 ID 証明書に黄色の警告アイコンが表示されます。ただし、証明書を選択して署名することはできます。大丈夫ですか?

  3. アプリに署名した後、その前に runed でsudo spctl -a -v MyApp.appアプリをテストしていました。sudo spctl --master-enable結果は次のとおりです。

    EIM.app: rejected
    source=Developer ID
    

この却下は、質問 2 の警告に関連していますか?

開発者 ID を使用して Mac アプリを配布するのは初めてです。助けてくれてありがとう。

4

1 に答える 1

3

Re: プロビジョニング プロファイルと DeveloperID — これらは不要です。Build SettingsのCode Signing Identity部分の自動セクションで、DeveloperID を受け入れることができるはずです。できない場合は、キーが見つからないか、情報を含むデータベースに何か問題がある可能性があります。

まず、キーチェーン アクセスに移動し、DeveloperID 証明書に付随する秘密鍵が関連付けられていることを確認します (これは、開示用の三角形の下に表示されます)。そうでない場合は、その証明書に関連するキーをどこかに保存したかどうかを確認する必要があります。署名する方法がないため、証明書を取り消して再発行する必要があります。

第 2 に、4.6.1 には既知のバグがあり、開発者ポータルからの情報を含むキャッシュされたデータベースが破損する可能性があります。この動作がこの問題によって引き起こされる可能性があるという具体的な兆候はありませんが、次の手順に進む前に試してみることをお勧めします。基本的に、Xcode を終了し、脇に移動 (または削除) ~/Library/Developer/Xcode/connect1.apple.com 4.6.1.db(はい、そのファイル名にスペースがあります)、Xcode を再起動し、オーガナイザーに移動して、プロファイルと証明書を更新する必要があります。

これがうまくいかない場合は、開発者 ID の取り消しを検討してください。

警告証明書付きのコードを正常に配布した場合は、Apple の Web サイト ( https://developer.apple.com/support/technical/certificates/ ) にアクセスし、出荷されたコードが取り消すことの意味を完全に理解するまで、証明書を取り消さないでください。開発者 ID。具体的には、インストールされたソフトウェアは引き続き機能しますが、ユーザーは元の証明書で署名されたバイナリをインストール/再インストールできなくなります。

証明書を使用してコードを正常に配布したことがない場合 (またはキーを回復できないほど紛失した場合) は、ポータルに移動して、開発者 ID 証明書を取り消してから再発行することをお勧めします。失効したら、新しい証明書を要求して新しい証明書を作成できます。

于 2013-04-14T23:23:16.423 に答える