The DeployGate Developer Hub

DeployGateデベロッパーハブへようこそ。このサイトではDeployGateを素早くご利用いただけるよう、網羅的なドキュメントとガイドを参照いただけます。

Get Started

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 を作っておく。

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

Apple ID

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

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

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

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

追加されました。

このチュートリアルを通じて何かわからないことがあれば、上のスクリーンショットで見えてしまっている私のメールアドレスまでお気軽にどうぞ。

ビルドターゲット

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

配布用証明書( Distribution Certificate )

少しの間 Xcode から離れて、ブラウザで "Apple Developer" にアクセスして下さい。
そこから "Member Center" に進み、"Certificates, Identifiers & Profiles" をクリックします。

ここで配布に必要なものは全て登録・作成できます。


"Member Center" です。

"Certificates, Identifiers & Profiles" はこのような表示になっているはずです。 "iOS Apps" の中にある "Certificates" をクリックしてください。

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

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

"+" ボタンをクリックして新しい証明書の作成を始めます。種類を訊かれますが、ベータテスターへの配布用には "App Store and Ad Hoc" を選びます。

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

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

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

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

キーチェーンアクセスはこういう感じです。

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

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

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

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

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

CSR をディスクに保存しましたか?。ではブラウザに戻り、これを Apple に提出しましょう。

CSR をアップロードしましょう。やたら長いファイル名のファイルがいるでしょう。それです。

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

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

アプリケーションID( App ID )

"Apple ID" ではなくて "アプリケーションID" の話です。

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

例によって "+" ボタンをクリックして新しい App ID の作成を始めます。

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

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

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

デバイス( Devices )

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

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

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

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

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

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

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

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

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

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

Provisioning Profile

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

いつもの "+" ボタンから作成を始めます。まず "Ad Hoc" を選び( Enterprise アカウントの方は "Ad Hoc" と "In House" を注意深く選んでください。このチュートリアルでは Enterprise Program を扱う余裕がありませんでしたが、また別の機会にご説明したいと思います)

その次は "App ID" 選びます。

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

最後に名前を付けます。これは個人的なアドバイスですが、プロファイルは増えるとわけがわからなくなるので、面倒くさがらずに、それぞれかなりユニークな名前を付けておくことをおすすめします。

完了しましたか?ダウンロードして、クリックしてインストールです!

アーカイブ(再)

ついに "Archive" メニューをクリックするときが来ました。

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

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

アーカイブがうまく行くと、 "Organizer" が立ち上がってきます

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

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

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

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

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

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

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