Xcode 4を使ってアドホック版のiOSアプリを作る方法

先日、クックパッドさんが主催する「開発コンテスト24」に参加したわけですが。

その際にAd-Hoc版のアプリをビルドする必要があってその時にやったことをメモしておこうかと。

そもそもAd-HocとはiOSアプリをiTune Store経由以外で配布する方法です。

使用用途としては公開前のiOSアプリを友人に試して貰う時とかに使用するようです。

アドホックでの配布方法はWebのいろんな所に情報があるのですが、Xcode 4だとやり方が異なったのでその方法を紹介します。以前はplistの作成とか必要だったみたいですが、僕のやり方では不要でした。では早速。

まずは、Ad-HocアプリをインストールするiPhoneのUUIDが必要です。

UUIDはiPhoneをiTunesに接続すると確認することができます。

下記の画面の順番にしたがってUUIDを確認して下さい。

画面の該当箇所にUUIDでは無くシリアル番号が表示されている場合には「シリアル番号」と書かれたラベルをクリックするとUUIDが表示されます。

インストールする全てのiPhoneのUUIDを調べます。

次にアドホック用の証明書を取得します。

まずは、iOS Dev Centerにいって、「iOS Provisioning Portal > Devices > Manage」を表示します。

右上の「Add Devices」のボタンを押下すると登録画面が表示されるので下記の用に入力します。

Device Name → 適当にわかる名前

Device ID → 先ほど調べたUUID

入力ができたら、右下の「Submit」ボタンを押下します。ちなみに複数台の端末を登録する場合には入力した後に右の「+」ボタンを押下すると一括で登録できます。

次にアプリケーションIDを取得します。既に取得している場合にはこの作業は必要ありません。

ちなみに「*ワイドカード」のアプリIDでAd-Hoc版をビルドしたら僕の場合にはうまくいかなかったのでAd-Hoc用のアプリIDを取得しました。

Description → アプリの説明(アプリ名とか)

Bundle Seed ID →  Generate New(これ既存の物を使いまわしても良いような。。。不明)

Bundle Identifier → ドメイン名+アプリ名とか(Xcodeでアプリを開いた時のIdentifierと揃えないと色々と面倒)

後は、右下の「Submit」ボタンを押下します。

次に証明書を取得します。

「Provisioning > Distribution」に移動して右上の「New Profile」ボタンを押下して登録画面で下記の用に入力します。

Distribution Method → Ad-Hoc

Profile Name → 分かりやすい名前(アプリ名とか)

App ID → 先ほど登録したApp ID

Devices → 最初に登録したデバイス(AdHocでインストールする端末)

で右下の「Submit」ボタンを押下します。

もう一度、 「Provisioning > Distribution」でブラウザの再読み込みをすると先ほど登録したProvisioning Profileの右側に「Download」ボタンが表示されるのでおもむろに押下してダウンロードします。

ダウンロードしたファイルをダブルクリックするとMacに登録されます。

アドホックで配布するアプリをXcodeで開きます。

下記の画面の順番で選択して「Configurations」の左下にある「+」ボタンを押下して「Duplicate Release Configuration」を選択します。

Configuration名は「Ad-Hoc」にします。(自由な名前で良い)

下記の画面の順番で選択して「Build Settings > Code Signing > Ad-Hoc(先程のConfiguration名) > Any iOS SDK」でダウンロードしたProvisioning Profieを選択します。

左上の「Scheme」から「Edit Scheme」を選択します。

左側のメニューで「Archive」を選択して「Buid Configuration」でAd-Hocを選択して、右下の「OK」ボタンを押下します。

Xcodeのメニューから「Product > Archive」を選択するとビルドが始まります。

ビルドが終わると「Organizer」が自動的に開きます。

右側の「Share」ボタンを押下します。

下記の用に設定します。

Contents → iOS App Store Package

Identity → 登録したProvisioning Profile

右下の「Next」ボタンを押下します。

ダイアログが開くので「Save As」にファイル名を入力します。ファイル名はアプリ名にします。

右下の「Save」ボタンを押下すると該当のアプリファイルが作成されます。

作成されたアプリファイルをインストールするデバイスが同期しているMacでダブルクリックします。

iTunesに先ほどのアプリが登録されるので後はiTunesを使って同期をすれば該当のiPhoneでアプリが動作します。

こんな機会でもないとアドホック版の作成なんかすることはなかったけど、この機会を作ってくださったクックパッドさんに感謝です。

残念ながら開発コンテスト24にはカスリもしませんでしたが。。。。

また来年も楽しく参加したいと思います。