メインコンテンツまでスキップ

Xcodeを使ったIPAファイルの作成手順

Xcodeを使ったIPAファイルの作成手順についてご案内します。


備考

DeployGateへアプリをアップロードする場合はdgコマンドが便利です

コマンドラインツール を使うとこれらの手順を dg deploydg add-devices といったコマンドを実行するだけで完了できますのでお試しください。以下は手動で行う場合の手順をステップバイステップで説明しています。

ベータテスターに配布するアプリケーションのビルド

開発中のアプリケーションをシミュレータで起動する方法はシンプルですが、ベータテスターへの配布となるとどうでしょうか。

DeployGate は、この「配布」をお手伝いします。

ただし今のところ、配布に必要な "IPA ファイル" の用意は、ご自身で行っていただくしかありません。

この IPA ファイルの作り方を、全くのゼロから作成まで、ここでご案内します。

アーカイブ( Archive )

iOS アプリケーションを IPA ファイルとしてビルドするために、 Xcode には "Archive" というメニューが "Product" の下にあります。今はグレーアウトしていて選択出来ないかも知れませんが、すぐに出来るようになります。

配布先で思った通りインストール、起動できる IPA ファイルを "Archive" するための条件は、次の通りです。

  • Apple ID を Xcode に保存しておく。
  • ビルドターゲット選択メニューから、"iOS Device" または接続中の iOS 機器を選択しておく。
  • 配布用証明書( Distribution Certificate )を作っておく。
  • アプリケーションの ID ( App ID )を作っておく。
  • テストに使うデバイス( Device )を登録しておく。
  • Provisioning Profile を作っておく。

これらの手順を一つ一つチェックしていきましょう。

1. Apple IDの保存

まず最初に、あなたの "Apple ID" を Xcode に保存しておきましょう。

一度保存しておけば、 Xcode があなたに代わっていくつかの細かい登録作業を行ってくれます。

"Preferences..." メニューから

Screenshot of xCode Apple ID from menue

"Accounts" タブで "Apple ID" を追加して下さい。

Screenshot of xCode Apple ID add

追加されました。

Screenshot of xCode Apple ID added

2. ビルドターゲットの選択

配布用にビルドするには、スキームのビルドターゲットはシミュレータではなく、 "iOS Device" 、または Mac に接続中のデバイスの名前を選択してください。

Screenshot of xCode Build

3.配布証明書(Distribution Certificate)の作成

少しの間 Xcode から離れて、ブラウザで "Apple Developer" にアクセスして下さい。 上部右端のメニューから "Account" に進みログインします。

ここで配布に必要なものは全て登録・作成できます。次に "証明書" をクリックしてください。

Screenshot of Distribution Certificate

証明書( Certificates ) は、配布したいアプリケーションの開発者であるあなたが、資格を持った iOS 開発者であることを Apple が証明するものです。これが無いと、あなたの作ったアプリケーションは実機へインストールしたり、起動したりできません。

ここで作る物を含めて、いくつかの証明書は Xcode 上で作成できますが (バックグラウンドで自動でやってくれる時もあります)、 いくつか "Certificates, Identifiers & Profiles" でしか作れないものもあります。ここでは練習がてら、手動で作ってみましょう。

"+" ボタンをクリックして新しい証明書の作成を始めます。 Screenshot of Distribution Certificate

種類を訊かれますが、ベータテスターへの配布用には "Apple Distribution" を選びます。

Screenshot of Distribution Certificate

証明書を作るために、 Apple はあなたに "Certificate Signing Request(CSR)" なるものの提出を求めてきます。

Screenshot of Distribution Certificate

これは申込書のようなもので、あなたの email アドレスと、秘密鍵に付けて欲しい名前を書いて Apple に提出します。

その後Appleはあなた用の証明書と秘密鍵を作って、渡してくれます。 証明書は Apple にも保存されますが、秘密鍵はあなただけが持つものです。

CSR は、 Mac の "キーチェーンアクセス" で作ります。 Screenshot of Distribution Certificate

キーチェーンアクセスはこのようになります。

Screenshot of Distribution Certificate

"証明書アシスタント" メニューの中に、"認証局に証明書を要求..." メニューがあるので、これを選びます。 Screenshot of Distribution Certificate

ここで申込書類を埋めます。

Screenshot of Distribution Certificate

"ユーザのメールアドレス" は、Developer Program に登録している Apple ID のメールアドレスです。

"通称" はあなた専用の秘密鍵に付けて欲しい名前です。これを Apple は証明書と一緒に返してくれます。

最後に "要求の処理" は ディスクに保存 としてください。 "CA のメールアドレス" は、 ディスクに保存 の場合空白にしておきます。

CSR をディスクに保存したら、ブラウザに戻り、これを Apple に提出してください。

"Choose File" をクリックし作成した CSR を選択したら、"Continue"をクリックしてください。

Screenshot of Distribution Certificate

アップロードが終われば、あなたの 配布用証明書( iOS Distribution Certificate ) がダウンロードできるようになります。 ダウンロードし、クリックして、キーチェーンアクセスにインストールしましょう。

Screenshot of Distribution Certificate

インストールされた証明書は、いつでもキーチェーンアクセスの "自分の証明書" カテゴリで確認できます。

Screenshot of Distribution Certificate

4. アプリケーションID (App ID)の作成

"Apple ID" ではなくて "アプリケーションID" についての説明です。

App ID はあなたのアプリケーションの URL のような役割を果たしてくれるもので、いろいろなサービスと連携する際の ID として、あなた製のアプリであることを証明するときの ID として、などなどさまざまなところで利用されます。 Apple から prefix が与えられるので、他の開発者のアプリケーションとはかぶらないようになっています。

まずは先程のサイトの左メニューから"Identifiers"を選択後、例によって "+" ボタンをクリックして新しい App ID の作成を始めます。

Screenshot of Create App ID

次の画面では "App IDs" を選択して、次に進みす。

Screenshot of Create App ID

通常のアプリであれば "App" を選択して、次に進みます。

Screenshot of Create App ID

"Description" は、このサイト上でのタグ・管理名・表示名で、お好きなように付けてください。 "Prefix" は Apple から与えられます。 "Bundle ID" はあなたが付けます。今回は "Explicit" を選び、 "Bundle ID" を入力して、次に進みます。

Screenshot of Create App ID

あなたのアプリケーションの "Bundle ID" は Xcode にあります。 どこかのタイミングであなたが名づけたものになります。

Screenshot of Create App ID

最後に "Register" をクリックしたら、登録完了です。

Screenshot of Create App ID

正常に完了できたでしょうか。ここで作った "App ID"s は今後の利用のために Apple が覚えていてくれます。ダウンロードしたりする必要はありません。

Screenshot of Create App ID

5. テストに使うデバイスの登録

Android の apk ファイルと異なり、ベータテスター向けにビルドされた iOS の IPA ファイルは、あらかじめ登録されたデバイスでのみ動作します。ということはつまり、デバイスで実行する前に、あらかじめアプリと開発者がデバイスのことを知っていないとならない、ということです。

In houseアプリケーションの配布を前提とする場合

もしあなたが "Enterprise Program" に登録した開発者であり、かつ、企業内での使用に限った "In House" アプリケーションの配布をするのであれば、このデバイスの内容はスキップして下さい。 "In House" アプリケーションではデバイスを事前に知る必要はありません。

サイドメニューから "Devices" ページを開くと、おそらくいくつかデバイスが既に登録されているかと思います。 これらは大抵 Xcode の "Devices" によって自動でここに登録されたものです。

Screenshot of Tester Devices Registration

Screenshot of Tester Devices Registration

もし、あなたのアプリを実行したいデバイスが全てあなたの手元にあれば、接続して "UDID" の登録を繰り返せば終わりです。

しかし、多くのベータテスターに協力してもらうとなると、このデバイスの "UDID" を大量に取り扱わねばなりません。

"UDID" は、一つ一つ登録することもできますし、ファイルにまとめて一気に登録することも出来ます。ですが、そもそも、 UDID を先に知っておかないとなりません。

現状の DeployGate は、このテスターのデバイスの UDID を集め、ファイルとしてまとめるところまで、あなたに代わってお手伝いします。

Screenshot of Tester Devices Registration

一つだけ、知っておかないとならないのは、 Apple が "Ad Hoc" アプリの起動のために設定出来るデバイスの数を100に制限していることです。 加えて、デバイスは1度登録すると、以後1年間は登録を解除出来ません。

これに対し、 "In House" アプリは、 IPA ファイルさえ手に入ればどの端末でもインストール・実行ができます。ただし、そのデバイスの持ち主があなたの企業のメンバーである、という許諾で取り交わした条件があります。

時にルールを破る勇気というのは賞賛に値するものですが、結果としては単にアカウントを失うだけなので、無謀な挑戦はやめておくようアドバイスさせていただきます。

6. Provisioning Profileの作成

最後にProvisioning Profile です。

この プロファイル によって配布用の IPA ファイルを作成出来るのですが、実のところこのプロファイルこそがビルドする際の指示書になっており、「証明書はあれで、 App ID はこれ、デバイスはこれとこれとこれ」といったことが書かれています。

サイドバーから"Profiles"を選び、プロファイルの一覧ページに遷移した後、"+" ボタンから作成を始めます。まず "Ad Hoc" を選び( Enterprise アカウントの方は "Ad Hoc" と "In House" を注意深く選んでください。このチュートリアルでは Enterprise Program を扱う余裕がありませんでしたが、また別の機会にご説明したいと思います)

Screenshot of Provisioning

次に "App ID" 選びます。

Screenshot of Provisioning

証明書( Certificates )とデバイス( Devices )も選択してください。 作っておいたものが表示されます。そうでなければ、それぞれのセクションに戻って正しく完了させてください。

Screenshot of Provisioning Screenshot of Provisioning

最後に名前を付けます。 プロファイルは増えると管理が煩雑になるため、それぞれユニークな名前を付けておくことをお勧めします。

Screenshot of Provisioning

完了したら、ダウンロードして、クリックしてインストールします。

Screenshot of Provisioning

7. アーカイブ (再)

初めに"Archive" メニューをクリックします。

Screenshot of Archive

これ以降もしうまくいかないことがあれば、まずはアプリの作者がちゃんとあなた(の Apple ID)にセットされているか確認してみてください。

Screenshot of Archive

ここの "Team" という言葉は、これは別に必ずしも複数人の集団のことではなく、もしあなたが Apple ID に属するただ一人の開発者なら(個人用 iOS Development Program なら必ずそうです)、あなたはそのアカウントの "Agent" であり "Admin" であり "Member" となります。

アーカイブがうまく行くと、 "Organizer" が立ち上がります。

アーカイブした一番上のアプリを選び、 "Export..." をクリックします。

Screenshot of Archive

"Save for Ad Hoc Deployment" を選択して次に進みます。

Screenshot of Archive

あなたのApple IDを選び、"Choose"を押してください。

Screenshot of Archive

"Next"を押していくと、IPA の作成が行われます。

Screenshot of Archive Screenshot of Archive

自動で"Finder"が立ち上がって、IPA ファイルの確認ができます。

Screenshot of Archive

そのIPA ファイルを、是非 DeployGate にアップロードしてください。お待ちしています。