開発機として使用する iPhone 実機を登録する

REGISTRATION REPORT


開発用の iPhone を登録する

Apple iPhone のアプリケーションを開発し、それを公開するためには、有償の年間プログラム iPhone Developer Program に参加します。

EZ-NET 登録レポート: iPhone Developer Program に登録する で記したように iPhone Developer Program への登録作業を行ったら、引き続き、開発用の iPhone を "iPhone Developer Program Portal" へ登録する必要があります。

 

証明書の要求ファイルを作成する

登録するためにはまず、Mac 上で証明書の申請ファイルを作成します。

Mac を起動したら、まずは "アプリケーション" フォルダー内の "ユーティリティ" フォルダーにある "キーチェーンアクセス" を起動します。そして、画面左上のアップルメニューから "キーチェーンアクセス" → "証明書アシスタント" と辿り、"認証局に証明書を要求" を選択します。

証明書アシスタントが起動したら、次のように証明書情報を入力して行きます。

ユーザのメールアドレス iPhone Developer Program に登録したメールアドレスを入力します。
通称 名前を英語表記で入力します。法人契約の場合は、契約の際に入力した法人名の英語表記を入力します。
CA のメールアドレス 空欄のままとします。
要求の処理 "ディスクに保存" にチェックを入れます。
併せて、"鍵ペア情報を指定" にもチェックを入れておきます。

なお、登録した名前が分らない場合は、先に iPhone Developer Program Portal へ接続すると、ヘッダー付近に "Program Portal: " という表記と共に名前が表示されます。おそらく、これが登録されている名前ではないかと思いますので、分らない場合はこちらを試してみても良いかもしれません。

 

入力したら 【続ける】 ボタンをクリックすると、保存先を尋ねるダイアログボックスが現れるので、証明書の要求ファイル名を設定します。既定では、当方の環境では "デスクトップ" に "CertificateSigningRequest.certSigningRequest" という名前で保存されるようになっていました。

保存ファイル名を指定すると、続いて鍵ペア情報の設定画面となります。ここでは以下のように、最初から選択されている値をそのまま使用することにします。

鍵のサイズ 2048 ビット
アルゴリズム RSA

これで、次へ進めば "証明書要求がディスク上に保存されました。" というメッセージが表示されて、証明書の要求ファイルの生成が完了します。

 

電子証明書を取得する

証明書の要求ファイルを作成したら、続いて "iPhone Developer Program Portal" 上で電子証明書を取得します。

"iPhone Developer Center" へ接続したら、Apple ID を用いてログインします。そして右上の "iPhone Developer Program" メニューから "iPhone Developer Program Portal" を選択して、"Program Portal" ページへ接続します。

そして、左側のメニューから "Certificates" を選択して、先ほど作成した証明書の要求ファイルを用いて、証明書の要求 (Request Certificate) を行います。

証明書一覧に新しい証明書候補が表示されたら、それを承認 (Approve) することで、証明書の発行が行われます。その時、ステータス表示が "Pending Issuance" という表示に変わりました。

そして、数分程して "Your Certificate Request Has Been Approved" というメールが届くので、再び "iPhone Developer Program Portal" へ接続して "Certificates" を確認すると、先ほど申請した証明書のステータスが "Issued" に変わっているのを確認できます。

そうなると、出来あがった証明書ファイルをダウンロード出来るようになっているので、それを Mac へダウンロードしておきます。

 

そして、ダウンロードした証明書ファイル (developer_identity.cer) をダブルクリックします。

キーチェーンに証明書を追加しても良いか尋ねられるので 【追加】 ボタンをクリックすれば、これで、発行された証明書を "キーチェーンアクセス" に取り込むことができました。取り込まれた証明書は、"キーチェーンアクセス" で確認することが出来ます。

なお、キーチェーンアクセスに登録された証明書の名前は "iPhone Developer: " といった感じのものになっていました。

 

iPhone を Xcode に登録する

証明書のインストールが終わったら、開発で使用する iPhone を、開発環境 Xcode に登録します。

Mac に USB で iPhone を接続します。それが正しく認識されたら、開発環境 Xcode を起動します。そして Xcode のアップルメニューから "ウィンドウ" → "オーガナイザ" と辿り、オーガナイザーを起動します。

DEVICES メニューの中に iPhone が表示されるので、それを選択して、"Identifier" として表示されている iPhone の "Device ID" を確認します。

 

"Device ID" の確認ができたら、再び “iPhone Developer Center" へ接続します。

ここから "iPhone Developer Program Portal" へ接続して、"Devices" メニューから iPhone 機器の追加 (Add Devices) を行います。デバイス名 (Device Name) は任意のものを入力し、"Device ID として、先ほど調べた iPhone 毎の "Identifier" の値を設定します。

なお、平成 22 年 2 月 20 日現在、Standard Company プログラムでは 100 機までの iPhone を登録出来るようになっている様子でした。

 

iPhone へアプリケーションを登録する

Xcode に登録した iPhone にアプリケーションを転送するには、App ID とプロビジョニングプロファイルを用意する必要があります。

App ID を登録する

App ID は、作成するアプリケーション毎に必要な ID のようです。

開発用にはワイルドカード (*) を用いた任意のアプリケーションに対応した App ID を生成することも出来るとのことでした。App Store に登録する際はワイルドカードの App ID は使えないような感じです。

今回はとりあえず、ワイルドカードを含む App ID を生成してみることにします。

 

iPhone Developer Center" から "iPhone Developer Program Portal" へ接続して、"App IDs" メニューから新しい App ID (New App ID) を作成します。

Description 登録するアプリケーションの名前等を入力しておくと良いでしょう。(例えば "Test Application" など)
Bundle Sheed ID (App ID Prefix) "Generate New" しか選べないようになっていたので、そのままそれを選んでおきます。
Bundle Identifier (App ID Suffix) ここでは、所有しているドメイン名をドット毎に逆順に並べ、最後にアプリケーション名を付けた文字列の使用が推奨されています。(例えば "jp.ez-net.station.report.appname" など)

今回はワイルドカードを用いた App ID を作成しようと思いますので、Bundle Identifier のアプリケーション名の部分を "*" にしたものを指定することにしました。(上記の例では "jp.ez-net.station.report.*" となります)

 

開発用プロビジョニングプロファイルの作成と利用準備

プロビジョニングファイルの作成

iPhone 実機上でアプリケーションを実行するには、そのアプリケーション (App ID) に対応したプロビジョニングプロファイルを作成する必要があります。

iPhone Developer Center" から "iPhone Developer Program Portal" へ接続して、"Provisioning" を選択します。そして新しいプロファイル (New Profile) の登録を行います。

Profile Name 任意のプロファイル名を設定します。(例えば "Test Application Profile" など)T
Certificates 関連付けたい証明書を選択します。
App ID 関連付けたい App ID を選択します。
Devices 関連付けたい iPhone を選択します。

登録を行うと、ステータス情報が "Pending" という状態で、開発用プロビジョニングプロファイル一覧にリストアップされました。

そして、直ぐに有効になりますので、再びメニューから "Provisioning" を選ぶなどして開発用プロビジョニングプロファイル一覧を確認して、ステータス表示が "Active" になるのを待ちます。

ステータスが "Active" になると、ダウンロードボタンが表示されるので、そこから開発用プロビジョニングプロファイルをダウンロードすることができます。

プロビジョニングファイルのダウンロードとインストール

プロビジョニングプロファイルをダウンロードしたら、それをダブルクリックして、インストールを行います。

プロビジョニングプロファイルがインストールされると、Xcode オーガナイザの "IPHONE DEVELOPMENT" セクション内の "Provisioning Profiles" のところに、作成したプロビジョニングプロファイルが登録されているのを確認することができます。

プロビジョニングファイルを iPhone に登録する

ここで、iPhone がまだ開発用として Xcode に登録されていない場合は、Xcode のオーガナイザーの "DEVICES" メニューから目的の iPhone を選択して、[Use for Development] ボタンをクリックして、この iPhone の開発用としての利用を許可します。

オーガナイザーの "DEVICES" グループから開発で使用する iPhone を選択して、【Summary】 の "Provisioning" のところにも、作成した開発用プロビジョニングファイルを登録します。

 

もしこのとき、デバイス情報として "The version of iPhone OS on "xxxxx" does not match any of the versions of iPhone OS supported for development with this copy of Xcode. Please restore the device to a version of the OS lited below. If necesarry, the latest version of Xcode is available here." といったメッセージが表示される場合があります。

この時は、そのメッセージよりも下に表示されている "OS Installed on xxxx" のバージョンと "Xcode Supported iPhone OS Versions" とを比べて、実機の OS がサポートされているかを確認します。サポートされていない場合には、新しい iPhone SDK をダウンロードして、アップデートを行うなどの対応が必要となるでしょう。

プロビジョニングファイルを Xcode に登録する

開発用プロビジョニングファイルの利用準備が整ったら、後は先ほどダウンロードしたプロビジョニングファイルを Xcode で開発中の iPhone アプリケーションへ登録すれば完了です。

Xcode で目的の開発プロジェクトファイルを開いたら、アップルメニューの "プロジェクト" から "アクティブ SDK を設定" と辿り、その中の "iPhone デバイス 3.1.3" といった、iPhone 実機での開発用 SDK を選択します。

実機用の SDK を選択したら、左側のメニューから 【ターゲット】 の項を探し、その中のアプリケーション名で右クリックして、ポップアップメニューから 【情報】 を選択します。

そしてまずは、【プロパティ】 タブの "識別子" のところに、"App ID" を登録する際に "Bundle Identifier" の項で設定した文字列を設定します。既定では "com.yourcompany.${PRODUCT_NAME:rfc1034identifier}" と書かれていましたが、これは削除してしまって大丈夫です。

こうすると、コード署名 ID を選択できるようになるので、表示されたターゲットの情報ウィンドウで 【ビルド】 タブをクリックして、その中の "コード署名 ID" の設定個所を見つけます。

そしてここで、今回のアプリケーションに該当する "開発用プロビジョニングファイル" を選択します。

 

利用準備完了

これで、開発環境への実機の利用準備が整いました。

後は通常通りビルドやデバッグ実行を行って、iPhone シミュレータの変わりに iPhone 実機で、アプリケーションの動作確認を行うことが可能になります。