Xcode4.3のコードサイン新機能

Xcode4.2.1でMacアプリがAppleに申請できない状態になってしまったので、わらをもすがる思いでXcode4.3をインストールして試してみました。ちなみに、Macアプリが申請できない状態というのは、production用のprofileがMacにインストールできなくて、きっとそのせいでValidationでエラーがでてアプリ申請ができない状態です。

Appleに問い合わせをしているものの、ProvisioningやCode Sign関連のトラブルは、Appleの中では御法度らしく、DTSは、Provisioning関連だからDeveloper Supportに問い合わせをしろと知らんぷりで、Developer Supportはエラーの内容からして技術的なことなのでDTSに問い合わせをしてくれと、たらい回しにあっています。もう行ったり来たりを4回以上繰り返しています。状況からして、エラーメッセージが”Unexpected Error”なので、この仕組みを作った部署が責任をもたないと、他に誰も解決しようがありません。それなのに、知らんぷりというのはひどいですね。

他に頼る所がないので、Xcode4.3のCode Siginingの新機能というリリースノートに目を付けて、わらをもすがる思いでインストールして確かめてみた次第です。

プロファイルのインストールエラーはこんなんです。

日本語で、”原因不明のエラーが起きたため、プロファイルがインストールできませんでした。”とエラー表示されます。Macの言語を英語にして英語のメッセージを確認してみると、”The profile 〜 could not be installed due to an unexpected error.”というエラーです。

そして、Xcodeでアプリ申請前のValidationを実行するとこんなエラーが出ます。

The product archive package’s signature is invalid. ensure that it is signed with your “3rd Party Mac Developer Installer” certificate.

The bundle identifier cannot be changed from the current value, ‘com.cacao.PasteShogibanForMac’. If you want to change your bundle identifier, you will need to create a new application in iTunes Connect.

This bundle is invalid. Apple is not currently accepting applications built with this version of the OS.

Xcode4.3で確認

Xcode4.3でいきなりValidationを行うと、プロファイルがないと言われてValidationできない状態になったので、Organizerで”Refresh”ボタンを押してみました。すると、証明書がないと言ってきて、リクエストボタンを押すと、勝手に証明書をダウンロードしてインストースしました!おお、これはいいですね!!

証明書は、何回もダウンロードしてインストールするとダブってしまいます。そして、消そうにもユニークなキーがなくて、名前と日付でしか判断できず、消しようがなかったのです。そのため、全部消して新しいのを作るしかなかったのです。

証明書自動インストール

今回は、どうやら2つの証明書が適切にインストールされていなかったらしく、”Submit Request”ボタンを押すと、自動的に証明書がダウンロードされてキーチェーンにインストールされました。

そのあと、エクスポートの確認がでてきました。

エクスポートすると、ファイル名.developerprofileというファイルが作成されました。きっとこれを他の開発マシーンで使うのでしょう。

Validation

エラーが1つ減りました!

これは、大分前進した気がします!

残りのエラーの1つ目は、プロジェクトを新規に作って、元のプロジェクトからファイルを全部コピーしたので、変な定義が残ってしまっているのかもしれません。2つ目は、OS X 10.7.3がだめなんですかね?iPadアプリとiPhoneアプリの申請はできたんですが…。Macアプリは10.7.3ではだめということなら、10.7.2に戻して申請してみますかね。

プロファイルのインストールは相変わらずできませんが、なんとか申請できそうな気がしてきました。Code Sign関連で困っている方は、Xcode4.3で試してみる価値はあると思います。

※Xcode4.3は、OS X 10.7.3以降で動作可能なのですが、今のところOS X 10.7.3で作成されたバイナリはアプリ申請を受け付けてくれません。OS X 10.7.2以下でアプリ申請を受け付けてくれる開発環境を別途お持ちの方のみ、Xcode4.3をお試しください。私は、Xcode4.3でインストールされた証明書をエクスポートして、OS X 10.7.0の環境にインポートしてエラーを回避しました。


関連記事