2009-03-20
■[iphone]Cretificateが期限切れになった場合の対処と注意点
メモメモ。
先に書いたSDK 3.0の問題でCodeSignエラーになって調べてるうちに、別の問題として証明書の有効期限が過ぎている事に気付いた。
当然なんだけど、Certificateの有効期限が切れてると申請とかはちゃんと出来ない(はず)。
(なぜか期限過ぎてからもDeviceにはインストールできていた。developmentの場合は証明書の期限を毎回なんてチェックしないのかも)
まぁ。。。いずれにしても、よくないw
というわけで、その時にやった事と若干ハマりがちなところをブログに書いとく。
なお、これが正式手順というわけではないのであしからず。あくまで、自分がやった流れの参考メモです。
1. Cretificateに再度証明書の発行を申請。
Program portalのCretificatesのページに行くと、証明書がなくなっているので、再度Requestする。
通常の申請と同じく、keychain access から鍵を生成し、出来上がったCSRファイルをUPすれぼOK。
俺は勢いでキーから再生成したけど、たぶんCSRは使いまわしできる。試してないけど。
で、UP終わったらApproveボタンを押して待つ。いつも通り。
2. 証明書のダウンロードと登録
statusがIssuedになったら、証明書をDownload→ダブルクリックしてkeychainに登録する。
この時、keychainへの登録の前でも後でもいいので、過去の期限切れ証明書を削除すること。
これが残っていると、古い証明書と新しい証明書の名前が同じなせいで、xcodeでのビルド時にどっちだか認識できずにCodeSign errorになる。
3. Provisioning Profileの再作成
Certificatesの申請が終わったら、Provisioning Profileを再作成する。
単にEditでもいいが、とにかく再生成する。
この再生成の際、なぜかwたとえEditであってもProfile nameが同一だとエラーになって変更できない。ので、名前を変更しておく事。
期限の事を意識するためにも、Profile nameに日付とかを入れておくといいかもしれない。
で、この新しく作成したProvisioning Profileをダウンロードして、これを使うようにすればOK。
もちろんだけど、端末にもProvisionig Profleをインスコし直すのを忘れずに。
ということで、なんかのお役にたてばメモでした。
■[iphone][xcode]iPhone SDK 3.0 betaのCodeSign Error
メモ半分。
僕は「開発者」と書いて「ひとばしら」と読むと教わりました。
だからiPhoneSDK 3.0のbetaが出たのでただただ忠実にインストールしたわけです。
そしたらね。
開発中のアプリケーションがDeviceにインストールできなくなっちゃったんですよ。
原因は、CodeSign Error。
どうも、iPhoneSDK 3.0をインストールすると、プロジェクト設定の中でProvisioning Profileが正常に認識できないみたいで、CodeSingの選択フォームで、Profileが「?」と表示されるようになってしまうんです。
そのせいで、正常にCodeSignを認識できないみたいで、エラーになってDeviceへインストールできなくなっちゃうんですね。
# オーガナイザの画面が変わっていたので、そのあたりに修正が入っているのかもしれないです。
なので、たとえビルドのバージョンを2.2.1にしていようとなんだろうと、iPhoneSDK 3.0を入れてるとSimulatorしか使えなくなっちゃうようです。
最初はえええーとか思ったけど、とりあえず再度SDK 2.2.1をダウンロードし、上書きインストールする事で事なきを得ました。
まぁ、SDKのダウンロードページにも注意書きのようなものはあるけど、こうなるとは思わなかった。
というわけで、リリースするようなiPhoneアプリを作る人は、やたらと人柱気分でiPhoneSDK 3.0を入れると、リリースができなくなって痛い目を見たりするので気をつけましょう!
