iTunesConnectは、次のエラーでバイナリ(Mac App Store用)を拒否しているようです。
無効な署名-パスwetfm.appのメインアプリバンドルwetfmは署名されていますが、署名が無効です。次のエラーがcodesignから報告されました。
封印されたリソースが欠落しているか無効です
アーキテクチャ:i386
私はここ数日、これを調べて、ほぼすべてを試しました。からの出力codesign --verify -vvvv wetfm.app
は
wetfm.app:ディスク上で有効
wetfm.app:指定された要件を満たします
から、 ;codesign --display --verbose=4 wet.fm.app
を含む出力ヘッダーの完全なリストを取得します。Authority=3rd Party Developer Application: our company cert
これは、正しく署名されていることを示しているようです。
アプリケーションは、コマンドライン(XCodeではなく-Unity3Dを使用)codesign -vvvv -s '3rd Party Mac Developer Application: our company...' --entitlements wetfm.entitlements wetfm.app
で;を使用して構築されています。その後、2つのプラグインバンドルとフレームワークが同様のコマンドを使用して署名されます。
最後に、パッケージはproductbuild --component "wetfm.app" "/Applications" --sign "3rd Party Mac Developer Installer: our company..." wetfmpackage.pkg
-でビルドされます。これは、Application Loaderを介して送信されます(これを受け入れてアップロードすると、無効な署名の電子メールが送信されます)。
これまでのところ、私は次のすべてを試しました:
- すべての開発者証明書を取り消し、XCode内で(および開発者証明書サイトを介して個別に)再生成します
- すべてのプロビジョニングプロファイルを削除する
- 署名プロセスの順序を再調整します(最初にメインバンドルに署名し、最後に署名します)
- サブバンドルに署名するかどうか(そうでない場合は後で追加のエラーとして表示されます)
- エンタイトルメントファイルに「application-identifier」を追加します(アプリケーションローダーがアップロードを拒否します)
- アプリとbundleIDの名前を変更します(wet.fmからwetfmへ)
- iTunesConnectの新しい(別の)アプリにアップロードしようとしています
私が知る限り、ローカルで正しく署名されているように見えます。少なくとも、メールで返送されたものと同じエラーメッセージを出力するようにcodesignを取得できれば非常に便利です。テストが大幅に高速化されるためです。
誰かが手がかりや洞察を持っているなら、それは非常にありがたいです。ありがとう!
(環境:10.8.2、すべての最新バージョン。)