[iPhone]Packager for iPhoneで書き出したipaファイルを実機転送すると署名が有効ではないと怒られる場合
FlashCS5の目玉機能iPhoneアプリの書き出し。
これの実機転送ができずに半年くらい途方にくれてましたが本日ようやく解決。
Windowsじゃできないんじゃないとの疑惑さえ沸いてましたがなんてことはなく、手順が悪かっただけでした。
ちなみに実機への転送は、Appleのデベロッパー登録が必要です。
(年間10800円 )
やり方はAdobeの提供してるPDFファイルを読めばできるはずなのだけども、ボクのケースでは一箇所だけ書いてある手順でできなくて、そこで勘違いしてずーっとハマってました。
ハマった項目、それは開発証明書ファイル( 拡張子 .p12 ) の設定です。
上記PDFには、
Mac OS での iPhone 開発用証明書の P12 ファイルへの変換
Apple iPhone 証明書を Apple からダウンロードしたら、P12 証明書形式に書き出します。Mac® OS でこれを行う手順は次
のとおりです。
1 アプリケーション/ ユーティリティフォルダー内にあるキーチェーンアクセスアプリケーションを開きます。
2 証明書をキーチェーンにまだ追加していない場合は、ファイル/読み込みを選択します。次に、Apple から取得した証
明書ファイル(.cer ファイル)に移動します。
3 キーチェーンアクセスの「分類」で「鍵」を選択します。
4 使用している iPhone 開発用証明書に関連付けられている秘密鍵を選択します。
秘密鍵は、ペアになっている iPhone Developer: [ 名] [ 姓] 公開証明書によって識別されます。
5 ファイル/書き出すを選択します。
6 .p12(Personal Information Exchange)ファイル形式で鍵を保存します。
7 この鍵を別のコンピューターに読み込むときに使用するパスワードを作成するよう指示があります。
とありますが、僕のmacの環境にはこれがありませんでした。
( iPhone Distribution しかない。。)
仕方ないので、 iPhone Distributionの証明書を書き出して、それを使ってFlashCS5でiPhoneアプリ形式での書き出しを行ったわけです。
これはエラーもなく、ipa形式のファイルを作ってくれます。
が、正規の手順どおりにiTunesから実機に同期しようとすると、つぎのようなエラーがでるのです。
署名者が有効でないため ~ インストールできませんでした。
わけわからんですよ。
そこでAdobeの指示は無視して、keychainの分類で、鍵ではなく、証明書の項目を見てみます。
するとiPhone Developperというそれっぽい項目がありました。
結論としては、ここでの証明書の項目(上記画像で選択されている部分)を.p12形式で書き出せば上手くいきます。
・・・ここでは罠があります。
秘密鍵の項目(上記画像で選択されている部分の一つしたの部分 )を.p12形式で書き出すこともできるのです。
この.p12ファイルを使っても、FlashCS5からはipa形式のファイルを書き出すことができます。
が、iTunesの同期で上に書いたようなエラーがでるのです。
(これでずーっとはまってた)
結論としては、書き出すファイルは、秘密鍵ではなく、証明書なんですよね。
AdobeのPDFではそのへんが明確に書いてないのでよくわからんのですよ。
でも、ググっても困ってる人の情報はぜんぜんないのですよね・・・
皆一発でできてるのかしら・・・
単に私がアンポンタンなだけなのかしら・・・
とにかく、この記事が同じ悩みがある人の助けになれれば幸いです。
P.S.
そして、書き出したアプリは予想以上に重かったw