テストの為アプリをエクスポート(iOS、tvOS、watchOS)
iTunes Connect にアプリをアップロードする前に、必要に応じて臨時(ad hoc)プロビジョニングプロファイルまたはチームプロビジョニングプロファイルを使用して、登録されたデバイスでのテストのためにそれを配布します。これらの配布方法を使用すると、Xcode でローカルにビルドされたアプリのバリアントをテストできます。アプリを実行するためにテスターは、チームメンバーや iTunes Connect ユーザーである必要はありませんが、そのデバイスは、会員センターに登録する必要があります。あなたのチームが開発とテストに使用する為に年間あたり製品ファミリごとに 100 台までのデバイスを登録できます。テストのために、これらのデバイスの一部を使用する余裕ができ、あなたのテスターからデバイス ID を収集することができる場合は、これらの方法のいずれかを選択します。
テストのためにアプリをエクスポートする手順は次のとおりです。
- すべてのテストデバイスを登録します。
- アプリをアーカイブします。
- あなたのアプリをコード署名する、臨時プロビジョニングプロファイルまたはチームプロビジョニングプロファイルのいずれかを使用してアーカイブをエクスポートします。
- テストデバイス上にアプリをインストールします。
- テスターからのクラッシュレポートを募ります。
臨時のプロビジョニングプロファイルについて
臨時のプロビジョニングプロファイル は、アプリが指定されたデバイスにインストールされるように Xcode の支援なしにアプリ・サービスを利用することができる配布用プロビジョニングプロファイルです。それはアプリのために作成できる、配布用プロビジョニングプロファイルの2つの型の1つです。(ストアにアプリを提出するために後で配布用プロビジョニングプロファイルの他の型を使用します。) 臨時のプロビジョニングプロファイルは、アプリのテストバージョンが、あなたの知らない内にコピーされ配布されていないことを保証します。
テスターにアプリを配布する準備ができたら、アプリの1つ以上、テスト·デバイスのセット、そして一つの配布証明書に一致するアプリ ID を指定して、臨時のプロビジョニングプロファイルを作成します。
       
臨時のプロビジョニングプロファイル内の各デバイスは、その 固有のデバイスID (UDID) によって識別されます。登録してプロビジョニングプロファイルに追加したデバイスは、会員センターで保存されます。各個人または企業は、開発やテストのため、メンバーシップ1年当たり 100 台のデバイスまで登録できます。
あなたは年間あたり各型 100 デバイスを登録できます。iOS アプリでは、100 のiPad、100 の iPhone、および 100 の iPod touch のデバイスを登録できます。
テストデバイスの登録
臨時のプロビジョニングプロファイルを作成する前に、1つ以上のテストデバイスを登録して下さい。テストデバイスを登録するには、テスターからデバイス ID を収集し、会員センターにそれらを追加して下さい。
テスターは、デバイス ID を検索するのに Xcode をインストールする必要はありません。iOS の場合、テスターは iTunes を使用してデバイス ID を取得できます。テスターに、iTunes を使って iOS のデバイス ID を検索 の手順を送信し、そのデバイス ID を送信するように依頼し、また独自のデバイス ID を収集するためにこれらの手順を実行します。Apple TV のデバイスの場合、テスターに システム情報を使用してデバイス ID 検索 の指示を送ります。彼らは、デバイス ID を取得するために自分の Mac に Apple TV を接続する必要があります。
会員センターを使用してデバイスを登録するに記載されているように会員センターでは、1つまたは複数のデバイスを登録します。
会員センターを使用してデバイスを登録 で説明したように、会員センターでは、1つ以上のデバイスを登録して下さい。
アプリのアーカイブ
次に、あなたのアプリのアーカイブを作成します。 Xcode はアーカイブオーガナイザーで、このアーカイブを保管します。
アーカイブを作成するには
- Xcode のプロジェクトエディタで、汎用デバイスを選び - つまり、汎用の iOS デバイス、汎用の tvOS デバイス、または汎用の iOS デバイス + watchOS デバイス - それとも、スキームのツールバーメニューからデバイス名を選択します。
- [製品(Product)] > [アーカイブ(Archive)] を選択してください。
シミュレータビルドのアーカイブを作成することはできません。デバイスがお使いの Mac に接続されている場合は、デバイス名は [スキーム(Scheme)] のツールバーメニューに表示されます。デバイスを切断すると、メニュー項目は、汎用のデバイス名に変ります。
アーカイブオーガナイザーが表示され、新しいアーカイブを表示します。
Xcode はアーカイブの予備検証テストを実行し、プロジェクトエディタで検証の警告を表示することがあります。例えば、資産カタログを使用しておらず、必要なアプリのアイコンを設定していないと、個々のアプリアイコンと起動イメージファイルを設定 で説明したように、Info.plist の警告メッセージが表示されます。この警告が表示された場合、問題を修正し、再びアーカイブを作成して下さい。
ストア外でのテスト用にアプリをエクスポート
テスターはあなたのアプリを実行するためには Xcode を持っていないので、彼らが次にデバイスにアプリをインストールするために使えるのは、iOS アプリ ファイル (.ipa ファイル名の拡張子を持つファイル) を作成して下さい。後でストアが、ユーザーに配布し、サポートされたすべてのデバイスまたはテストデバイス・バリアント上で動作するユニバーサルアプリをテストするには、この方法を使用します。
テスト用に iOS アプリファイルを作成するには
- アーカイブオーガナイザで、アーカイブを選択します。
- [エクスポート(Export)] ボタンをクリックし、エクスポートオプションを選択し、[次へ(Next)] をクリックします。
- 表示されるダイアログ内で、ポップアップメニューからチームを選択し、[選択(Choose)] をクリックします。
- [デバイスサポート] ダイアログで、ユニバーサルアプリか、または特定のデバイス用のバリアントをエクスポートするかを選択し、[次へ(Next)] をクリックします。
- サポートされている全てのデバイス上でアプリケーションを実行したい場合は、「互換性のあるすべてのデバイスに対して1つのアプリをエクスポートする」を選択して下さい。
- すべてのデバイスのバリアントをテストしたい場合は、「特定のデバイス用のエクスポート」を選択し、ポップアップメニューから「すべての互換性のあるデバイスのバリアント」を選択します。
- 特定のデバイスバリアントをテストしたい場合は、「特定のデバイス用に間引いたアプリをエクスポート」を選択し、ポップアップメニューからデバイスファミリを選択します。
- 表示されるダイアログで、アプリ、その資格、およびプロビジョニングプロファイルを確認します。
- ビルドオプションを確認し、[次へ(Next)] をクリックします。
- オンデマンドのリソースを使用している場合、「オーバー・ザ・エアインストールのマニフェストを含めます(Include manifest for over-the-air installation)"をチェックして下さい。
- ビットコードから作成されたビルドをテストしたい場合は、「ビットコードからエクスポート(Export from bitcode)」をチェックします。
- あなたがマニフェストファイルを要求した場合、表示された「配布マニフェスト情報(Distribution manifest information)」ダイアログで、Web サーバーの詳細を入力してください。
- 名前。 アプリの名前は、ダウンロードとインストール時に表示されます。
- アプリの URL。 iOS アプリファイルの完全に条件を満たした HTTPS の URL。
- 表示イメージの URL。 ダウンロードおよびインストール中に表示されるアプリのアイコンの完全に条件を満たした HTTPS の URL。イメージファイルは 57x57 ピクセルで、PNG 形式でなければなりません。
- フルサイズのイメージの URL。 iTunes で表示される拡大画像の完全に条件を満たした HTTPS の URL。イメージファイルは 512×512 ピクセルで、PNG 形式でなければなりません。
- [エクスポート(Export)] をクリックします。
指定されたデバイスのユーザーにアプリを配布するには、「臨時展開用に保存」を選択して下さい。アプリが配布証明書でコード署名されます。
内部テスト用のアプリを配布するには「開発展開のために保存」を選択します。アプリは開発証明書でコード署名されます。
必要に応じて、Xcode はあなたのために必要な署名 ID と、プロビジョニングプロファイルを作成します。
臨時(アドホック)プロビジョニングプロファイルは、XC Ad Hoc: のテキストで始まらなければなりません。チームプロビジョニングプロファイルは、 [platform] Team Provisioning Profile: [App ID] で始まる必要があります。(チームのプロビジョニングプロファイルをより詳しく を参照のこと)
ストアの外であなたのアプリを配布する場合は、オンデマンドのリソースを自分でホストする必要があります。マニフェストファイルは、Web サーバーからアプリを、見つけ、ダウンロード、およびインストールするためのデバイスで使用される XML plist です。
ビットコードは、ビットコード で説明したように、ストアがあなたのバイナリをビルドすることを可能にするコンパイル済みのアプリの中間表現です。あなたは Xcode を使用してビットコードから作成されたバイナリをテストできますが、また、TestFlight を使ったアプリの配布 (iOS、tvOS、watchOS) で説明したように、TestFlight を使用して、ストアによって作成されたバイナリをテストする必要があります。
次の情報を入力します。
Finder はエクスポートされたファイルを示します。
Xcode はあなたが指定した iOS のアプリファイルを含むフォルダを作成します。あなたがマニフェストファイルを要求した場合、manifest.plist ファイルが、iOS アプリのファイルと同じ場所に表示されます。あなたがバリアントを要求した場合、アプリの間引きメトリックも、フォルダに含まれます。App Tinning Size Report(アプリ間引きサイズレポート) ファイルは、すべてのバリアントのサイズを含んでおり、app-thinning.plist ファイルは詳細が含まれています。
Xcode を使ってテストデバイスにアプリをインストール
Xcode を使用して、デバイス上に iOS アプリのファイルをインストールできます。tvOS アプリの場合、これは Apple TV に iOS アプリファイルをインストールするための唯一の方法です。
デバイス上にアプリをインストールするには
- お使いの Mac にデバイスを接続します。
- Xcodeで、[ウィンドウ(Window)] > [デバイス(Devices)] を選択し、[デバイス(devices)] の下でデバイスを選択します。
- インストール済みのアプリのテーブルで、テーブルの下にある[追加] ボタン (+) をクリックします。
- 表示されるダイアログで、iOS のアプリファイルを選択し、[開く(Open)] をクリックします。
[デバイス] ウィンドウで実行できるタスクの詳細については、デバイス上のアプリの管理 をお読みください。
iTunes を使ってテストデバイスにアプリをインストール (iOS、watchOS)
テスターにアプリを配布する前に、インストールして、彼らのデバイス上でアプリを実行するためにテスターが使用するのと同じ手順に従ってください。開発用でないデバイスにアプリをインストールするには、iTunes を使用してください。オペレーティングシステムは、あなたのアプリに埋め込まれたプロビジョニングプロファイルを抽出し、あなたのためにデバイス上でそれをインストールします。次に、デバイス上でアプリをテストします。
iOS デバイス上にアプリをインストールするには
- iTunes を実行中の Mac にテストデバイスを接続します。
- 以前に作成した iOS のアプリファイルをダブルクリックします。
- iTunes で、ウィンドウの左上隅にあるデバイスをクリックします。
- [アプリ(Apps)] のボタンをクリックします。
- アプリの下で、ポップアップメニューから「名前で並べ替え(Sort by Name)」または「種類で並べ替え(Sort by Kind)」を選択します。
- [インストール] ボタンが表示されたら、それをクリックします。
- デバイスを同期するために、右下隅にある[適用(Apply)] ボタンまたは[同期(Sync)] ボタンをクリックします。
可能な場合は、開発に使用する Mac を使用しないでください。watchOS アプリの場合は、Apple ウォッチとペアの iPhone を接続してください。
アプリは、iTunes のアプリの一覧に表示されます。
[インストール(Install)] または[削除(Remove)] ボタンがアプリに隣接して表示されます。
ボタンのテキストが[インストールします(Will Install)] に変わります。
ユーザーがテストを開始することができるようにアプリがデバイスにアップロードされます。
最後に、「テスターからのクラッシュレポートの募集」で説明したように、アプリのインストール手順とクラッシュレポートの指示に沿って、テスターに iOS のアプリファイルを送信します。
Apple コンフィギュレータ2 (iOS、watchOS、tvOS) を使用してテストデバイスにアプリをインストール
Apple コンフィギュレータ2は、接続されたテストデバイスに iOS と tvOS アプリを簡単にインストールすることができる Mac App Store からの無料アプリです。tvOS アプリの場合、これは Xcode を使用せずに Apple TV に iOS アプリのファイルをインストールする唯一の方法です。
Apple コンフィギュレータ2を使用して、デバイス上にアプリをインストールするには
- Apple コンフィギュレータ2を実行している Mac にテストデバイスを接続します。
- デバイスを選択し、[追加(Add)] ボタン(+) をクリックし、ポップアップメニューからアプリを選択します。
- 表示されるダイアログで、"私の Mac から選択(Choose from my Mac)" をクリックします。
- 以前に作成した iOS アプリのファイルを選択し、[追加(Add)] をクリックします。
可能な場合は、開発に使用している Mac を使用しないでください。watchOS アプリの場合は、Apple Watch とペアになっている iPhone を接続してください。
Xcode サーバーを使ってアプリの配布
ベータテストのためアプリをエクスポートするために、この章の手順を実行した後は、必要に応じてアプリを配布するため Xcode サービスを設定することができます。Xcode サーバーは、ビルドのテスト、分析、テスト、およびアプリをアーカイブする統合プロセスを自動化します。Xcode サーバーは、プロダクトのビルドや、テスターや他のチームメンバーへのアーカイブの配布を容易にする Web サイトをホストします。テスターへのアプリのバージョンを配布するために Xcode サーバーを使用する詳細については、Xcode サーバーと継続的インテグレーションガイド を参照してください。
アプリサンドボックスのデータのコピー
さらにアプリの問題を診断するには、デバイス上のアプリコンテナを表示、ダウンロード、交換 に記載したように、表示し、ダウンロードし、iOS デバイスのアプリコンテナの内容を交換できます。
テスターからクラッシュレポートの募集
アプリがデバイス上でクラッシュすると、オペレーティングシステムは、そのイベントのレポートを作成します。次回テスターは iTunes にデバイスを接続し、iTunes は、テスターの Mac に (クラッシュログとして知られる) それらのレコードをダウンロードします。テスターは、任意のバグレポートと一緒に、あなたにこれらのクラッシュログを送信する必要があります。後で、あなたのアプリがリリースされた後、あなたはまた、iTunes Connect からのライブアプリのクラッシュレポートを取得できます。
テスターに、自分のデバイスからクラッシュレポートを取得し、どうやってあなたにそれらを送信するか教えてください。
Mac からクラッシュレポートを送信するには
- iTunes を実行中の Mac にテストデバイスを接続します。
- Finder で、[移動(Go)] > [フォルダへ移動(Go to Folder)] を選択します。
- ~/Library/Logs/CrashReporter/MobileDevice と入力します。
- お使いのデバイス名で識別されるフォルダを開きます。
- テストしているアプリの名前が付けられたクラッシュログを選択します。
- [Finder] > [サービス] > [メール] > [ファイルを送信] を選択してください。
- 新しいメッセージのウィンドウで、[宛先(To)] フィールドに開発者のアドレスを入力し、[件名(Subject)] フィールドに適切なテキストを入力してください。
- [メッセージ] > [送信] を選択します。
- 後で重複レポートを送信することを避けるため、送信したクラッシュレポートを削除します。
iTunes は Mac にクラッシュレポートをダウンロードします。
Windows からクラッシュレポートを送信するには
- Windows の検索フィールドで、Windows のユーザー名で <user_name> を置き換え、ご使用のオペレーティング・システムのクラッシュログ・ディレクトリを入力します。
- Windows での、クラッシュログ格納では、次のように入力します:
- Windows XP でのクラッシュログ格納については、次のように入力します:
- お使いのデバイスの名前が付けられたフォルダを開き、件名テキスト形式 <app_name> crash logs from <your_name> を使用して電子メールメッセージの中でテストしているアプリのクラッシュログをアプリの開発者に送信します (例えば、MyTestApp crash logs from Anna Haro)
C:\Users\<user_name>\AppData\Roaming\Apple computer\Logs\CrashReporter/MobileDevice
C:\Documents and Settings\<user_name>\Application Data\Apple computer\Logs\CrashReporter
テスターから受信した報告書を解釈する方法については、デバイスウィンドウでクラッシュの表示とインポート をお読みください。
臨時のプロビジョニングプロファイルをより詳しく
臨時プロビジョニングプロファイルに指定された配布証明書を使用して iOS アプリファイルにあなたは署名しました。アプリをビルドし、アーカイブする際に臨時プロビジョニングプロファイルは、アプリバンドルに含まれていました。次に、テストデバイス上にアプリをインストールしました。アプリのバンドル ID がアプリ ID と一致した場合、アプリは成功裏に起動し、署名は配布証明書と一致して、デバイスは臨時プロビジョニングプロファイルのデバイスリストにあります。
       
総括
この章では、臨時プロビジョニングプロファイルを使用して指定されたテストデバイスにアプリを配布する方法を学びました。また、あなたのアプリのベータ版をインストールして、あなたにクラッシュレポートを送信するために臨時テスターに送信するための指示を受け取りました。
前の章
次の章