2

Mac App Store に (Qt 5.4.2 を使用して (疑いがありますが、念のため含めて)) アプリを送信しようとしていますが、何らかの理由で次のエラーが発生し続けます。

無効な署名- このエラーは、アプリのインストーラーに間違って署名した場合に発生します。このプロセスには、「サード パーティ Mac 開発者アプリケーション」証明書と「サード パーティ Mac 開発者インストーラ」証明書の 2 つの証明書が必要です。パッケージに署名するときは、インストーラ証明書を使用してパッケージに署名していることを確認する必要があります。Xcode オーガナイザー経由でアプリを送信するとき、またはコマンド ラインから productbuild を実行するときに、この証明書を指定していることを確認してください。

Xcode 6.4 で 10.10.4 を使用していたとき、Application Loader でこのエラーが発生していました。通常の検索を行った後、この問題について見つけた参考資料はすべて 3 ~ 4 年前のものでした。古い回答の 1 つで、誰かが OSX と Xcode をアップグレードするとそれが修正されたと述べていたので、一体何なのかを考えました。

私は OSX 10.11.13 にアップグレードし、Xcode 7.2.1 (Application Loader 3.4 (902) とともに) でコンパイルしていますが、最初は「ああ、エラーはなくなった!」と思いました。Application Loader で表示されなくなったためです。ただし、Application Loader がアップロードすると、(上記のように) メールに同じエラーが表示されます。

私は、Qt フレームワークでコピーすることで多くのブードゥーを実行し、問題を修正してバイナリに署名する Python スクリプトを持っています。そして、最後の 2 つのことは、PKG ファイルを作成して署名することです。最初は、2 つの別々のステップでそれを行いました。--sign笑いのために、引数を段階的に追加しようとしましたproductbuildが、同じ結果が得られました。コマンドは次のようになります。

print ("Creating the PKG")
subprocess.call([r'/usr/bin/productbuild', 
    r'--component',
    bundleFolder+ '/MyApp.app',
    r'/Applications',
    r'MyApp-Installer.pkg',
    r'--sign',
    r'3rd Party Mac Developer Installer: My Name (12345XXXX)',
])

#print ("Creating the Signed PKG")
#subprocess.call([r'/usr/bin/productsign', 
#   r'--sign',
#   r'3rd Party Mac Developer Installer: My Name (12345XXXX)',
#   r'MyApp-Installer.pkg',
#   r'MyApp-Installer-Signed.pkg'
#])

また、FWIW、アプリを更新しようとしたのはこれが 1 年以上ぶりです (私は知っています :( ) これは新しいマシンです。そのため、開発者ポータル (developer.apple.com) で証明書を削除し、再作成しました。それらをインポート/インストール/ダウンロードしました. 実際, 私はそれを理解するために何度かそれをしました. 前回Xcodeを介してそれらを作成したとき. したがって、キーチェーンアクセスは次のようになります:

ここに画像の説明を入力

開発者ポータルでのビューは次のようになります。

ここに画像の説明を入力

ただし、私が言及する可能性のある別のこと (重要かどうかはわかりません)、これらの新しい証明書をキーチェーンに追加するたびに、Xcode で行うか、主に証明書を作成、ダウンロード、インポートするかにかかわらず、証明書を右クリックして [情報を見る] -> [信頼] に移動し、[コード署名] を [値を指定しない] から [常に信頼する] に変更する必要がありました。

誰かが私が間違っていることを特定するのを手伝ってくれることを期待して、私は多くの詳細を提供しようとしました. 誰か提案やアイデアがあれば、私は非常に感謝しています!

4

1 に答える 1

1

考えられる 2 つの解決策

この問題は、それぞれ異なる理由で 2 回発生しました。

初めてキーチェーンの証明書を確認したところ、重複した証明書が見つかりました。重複を削除して (有効期限が最も長いものを残して)、問題を解決しました。

2 回目は、開発マシンとして新しいラップトップに切り替えましたが、キーチェーンに関連する証明書がありません。https://developer.apple.com/account/mac/certificate/からダウンロードしてインストールし、問題を解決しました。

したがって、この問題はキーチェーンの証明書に関するものだと思います。適切な証明書のセットがあり、紛失、重複、有効期限がないことを確認してください。

于 2017-03-26T03:00:55.043 に答える