iPhoneアプリは、一般に公開するためにはiTunes App Storeに載せる必要がありますが、端末を特定すればストアを経由せずに配布することが認められています。
この場合は2つの方法があります。
1、ビルドしたapp(ipa形式)をメールなどで配布しPC経由でiTunesを使ってiPhone(iPad/touch)にインストールする。
2、同上のappを、webサーバに載せてインターネット経由(OTA: Over The Air)で直接iPhoneにダウンロードする。
前者については、こちらの記事を参照ください。
どちらが便利かといわれれば、圧倒的に後者ですよね。なので、その手順を忘れない為に記しておきます。
------------------
1、端末の登録
まず大前提として、配布先の端末(iPhone/iPad/iPod touch)は、Appleに登録してProvisioningを受けたものでなければなりません。
Provisionを作成するためには、Appleの iOS Dev Centerにログインし、「iOS Provisioning Portal」を開きます。もちろんデベロッパ登録が必要ですよ、念のため。
左側メニューから「Devices」を選び、画面右上付近にある「Add Devices」ボタンを押します。
デバイス名とUDIDを入力すると登録完了。
UDIDは端末毎に異なるIDです。取得方法はGoogleで検索してください。専用iOSアプリを使うのが便利です。何種類か公開されてます。

2、Provision の作成
私はXcodeで管理された「Team Provisioning Profile」というやつを使ってます。これは法人契約すると勝手に作られるProvisionのようです。もちろん手動でiOS Provisioning Portal で作成して端末を登録することもできます。
上の手順で登録した端末は、Xcodeの「Organizer」を開き、左メニューから「LIBRARY」を選択、画面下端の 「Reflesh」ボタンを押すと、自動でTeam Provisioning Profileに端末が追加されます。

3、appをビルド
上記手順で Team Provisioning ProfileはXcodeに登録されてますので、これをつかってビルドします。
「Product」メニューから「Edit Scheme」を開き、「Archive」で選択されたスキームがBuildもしくはReleaseのいずれかを選択する。Distributionではないので間違えないよう。
「Build Settings」の「Code Signing」で上記で選択したスキームに Team Provisioning Profileを設定する。
「Product」メニューから「Archive」を実行。
Organizerから「Archive」を開き右側の「Share」ボタンを押す。「Contents」は iOS App Store Package(.ipa)を選ぶ。「Identity」には Team Provisioning Profileを選ぶ。「Next」ボタンを押す。
「Save for Enterprise Distribution」をチェックすると下図のダイアログがあらわれるので必要な情報を入力する。

簡単に説明する
Application URL: アプリを掲載するサーバとアプリファイル名までのフルURL
Title: iPhone画面に表示されるアプリ名
Large Image URL : iPhone画面(Retina)に表示されるアプリアイコンファイル 114x114 png形式
Small Image URL : iPhone画面(旧)に表示されるアプリアイコンファイル 57x57 png形式
画面右下の「Save」ボタンを押すと、指定した場所に*.ipa , *.plist の2つのファイルが生成されますので、これを上記で指定したサーバにFTPなどで2つともアップロード。アイコンのpngファイルも同様にアップロードする。
この場合は、app.ipa, app.plistが生成されます。
4、ダウンロード用にhtml画面をつくる
ダウロード用なので簡単でかまいません。こんな感じ。
CurryNavi CurryNavi
Install CurryNavi
5、端末から上記画面にアクセス
hrefをクリックすればダウンロードとインストールが始まります。
注意事項
どうやら端末が追加されるごとに上記作業を初めからやりなおす必要があるようです。
多数ある端末の登録はCSVファイルで一括アップもできるみたいですが、やってません。
ーーーー
ああ、忘れそうだ。
だから書いとこう
この手順でうまくいかなかったとしても私はいっさい責任もちませんのであしからず。
最近のコメント