アプリの配布ワークフローについて

重要: これは開発中の API やテクノロジーのための予備的な文書です。Apple は、Apple ブランドの製品で使用するために、ここに記載の技術やプログラミング・インターフェースの採用を計画するのに役立つ、この情報を供給しています。この情報は変更される可能性があり、この文書に従って実装されるソフトウェアは、最終的なオペレーティング・システム・ソフトウェアと最終文書でテストする必要があります。この文書の新しいバージョンは、API または技術の将来のベータ版で提供されるかもしれません。


このガイドでは、App Store や Apple TV App Store、Mac App Store からアプリを配布するために知るべきすべての事が含まれています。


1_administration_tasks_2x


Xcode の機能や、Apple デベロッパプログラムのメンバーのみに利用可能ないくつかのウェブツールを使用してあなたはこれらのタスクを実行します。iCloud やゲームセンターなどの特定のアプリのサービスを使用する前に、Apple のデベロッパプログラムに参加しなければなりません。アプリが既知のソースから来ていると顧客がわかるように、Store の外でアプリを配布する場合でも、このプログラムに参加して下さい。


あなたは、Mac、iOS、tvOS、および watchOS 全てのアプリを開発するため Xcode を使用します。Mac のアプリは、OS X が稼動している開発用コンピュータで起動します。しかし、iOS、tvOS、watchOS のアプリは、それぞれのデバイスまたはお使いの Mac 上のシミュレータで実行する必要があります。iOS アプリの場合、デバイスは、iPad、iPhone、および iPod touch です。tvOS アプリの場合、デバイスは、Apple TV です。watchOS アプリの場合、デバイスは、Apple ウォッチとペアを組んだ iPhone です。Xcode はこれら全てのデバイスの型のシミュレータを提供していますが、完全にあなたのアプリをテストするためには、あなたの Mac に実際のデバイスを接続する必要があります。


注意: デバイス上でアプリを実行したり、アプリサービスを使用するコードを記述するために Xcode を使用する場合は、アプリ配布クイックスタート をまず読んで、あなたのアプリの寿命を通して実行できる追加のタスクについて、このドキュメントに戻って来てください。

一目見て


このガイドでは、開発、テスト、アップロード、提出、そしてアプリをリリースする方法を説明します。あなたのツールや配布過程を理解することで、顧客に新しいアプリやアップデートをより速く入手させることができるでしょう。


アプリ配布のため Apple デベロッパプログラムに登録


アップルデベロッパプログラムに参加するのは、アプリレビュー にアプリを提出する最初のステップであり、iOS の社内アプリを配布するために、またはあなたが開発者 ID を使用して Mac App Store の外で配布するアプリに署名するために、必要です。メンバーとして、あなたはアプリのサービスを設定し、新しいアプリやアップデートを提出する必要があり、リソースへのアクセス権を持っています。


関連の章:アカウントの管理


アプリにサービスを追加


Apple は、ゲームやニューススタンドアプリや、アプリ内購入や iAd ネットワークなどの収入の追加ソース用のアプリの特定の型のための高度な、統合されたサービスを提供しています。これらのアプリサービスには追加設定が必要で - 開発時とそれ以降両方で - あなたがストアにアプリを提出するときに必要です。良い例は、ゲームセンターや iCloud です。このガイドでは、あなたのアプリのためにこれらの機能を設定する方法を学びます。


関連する章:機能の追加


配布用アプリを用意する


テストのためにアプリを配布したり、承認のためのストアに提出する前に、Xcode プロジェクトの設定を完了します。最終的な Xcode プロジェクトは、必要なアプリのアイコンと起動イメージが含まれている必要があり、あなたのアプリがサポートするデバイスやオペレーティングシステムを指定する必要があります。


関連する章:配布用に Xcode のプロジェクトを構成

アプリを多数のデバイス間でテストしリリース


あなたの iOS、tvOS、そして watchOS アプリを必ずシミュレーターだけではなく、すべてのデバイスでテストしている事を確認し、アプリがサポートしているものをリリースします。デバイスの複数の種類のテストは、あなたのアプリが、それが実行しているデバイスに関係なく、それは思っているのとまったく同じように動作することを保証します。アプリを自分でテストした後、テスターへのアプリのベータ版のリリースを配布します。あなたはベータ版アプリを自分でベータテストを管理するため iTunes Connect を使用して配布することができます。TestFlight とストアを介して配布されたアプリは、Apple が収集し、あなたがダウンロードして、Xcode で分析できるクラッシュログを集約するサービスを提供しています。クラッシュレポートは、Mac App Store で入手可能な Mac のアプリのためにも用意されています。


関連する章:テスト用にアプリをエクスポート(iOS、tvOS、watchOS)クラッシュレポートの分析


アプリをストアに提出・リリース


ストアにアプリを提出するには多段階のプロセスを踏んで行きます。まず、iTunes Connect にサインインし、アプリレコードを作成し、必要な情報を入力します。ストアであなたのアプリを販売している場合は、iTunes Connect であなたの払い戻しのための情報を提供します。Xcode で、アーカイブを作成し、配布証明書で署名します。その後、Xcode か、アプリケーションローダーを使ってアプリをアップロードします。iTune Connect を使ってアプリをストアに提出します。アプリが承認されたら、アプリを顧客に利用できるようにする日付を設定して、リリースするように iTunes Connect を使用して下さい。


関連する章:アプリの提出iTunes Connect でアプリの管理Apple 開発者エンタープライズプログラムアプリの配布Mac App Store 外でのアプリの配布

ストアの外でアプリを配布


また、Apple デベロッパエンタープライズプログラムに参加し、従業員に直接社内用のアプリを配布します。Mac App Store 以外で Mac アプリを配布するには、開発者 ID 証明書で作成し、アプリに署名します。あなたがストアの外であなたのアプリを配布している場合は、わずかに異なるプロセスに従ってください。iTunes Connect にアクセスする必要はなく、いくつかのアプリサービスは、これらのステップをスキップできます。


関連する章: Apple 開発者エンタープライズプログラムアプリの配布Mac App Store 外でのアプリの配布

証明書、ID (Identifier)、およびプロファイルの維持


Apple はあなたの知らないうちに変更されたり配布されないようにユーザーデータとアプリの両方を保護するための基本的なセキュリティモデルを実装しています。開発プロセスを通じて、Apple があなたやあなたのデバイス、そしてあなたのアプリを識別するために使用する情報を作成し、入力して下さい。Xcode は自動的に多くの証明書、ID、およびプロファイルを、必要なように作成します。Xcode は、アプリ ID と、プロビジョニングプロファイルを維持しますが、あなたのためであり、他の資産の為ではありません。お使いの Apple デベロッパプログラムのメンバーシップの中で、他の証明書、ID、およびプロファイルを自分で維持して下さい。


関連する章:署名 ID と証明書を維持するID、デバイス、プロファイルの維持


このマニュアルの使用法


このマニュアルの使用法は、あなたが参加している Apple デベロッパプログラムの役割 (チームエージェント、管理者、メンバー) に依存します。 Mac のアプリを開発している場合、あなたの役割は他のプラットフォームよりも、Mac のプラットフォームでは異なります。Mac アプリの場合、このマニュアルの使用法も、あなたが、Mac App Store にアプリを提出しようとしているか、または Mac App Store 以外で配布しようとしているかによって異なります。


最初にアカウントの種類 (個人か会社か) を選択します。必要に応じて、アカウントの管理 で説明したように、Apple ID を作成し、Apple デベロッパプログラムに参加して下さい。あなたが個人として、Apple デベロッパプログラムに参加した場合は、あなたは1人のチームのチームエージェントです。あなたが会社として Apple デベロッパプログラムに登録した場合は、あなたはチームメートであり、チームメンバーを招待する で説明したように、あなたのチームに参加する他の人を招待することができます。あなたは、どの人が、チームの管理者であり、またチームのエージェントと同じ仕事が誰が出来るか、資産を作る事が出来ないチームメンバーかと言う事を会員センターで指定できます。チームの役割の詳細については、Apple デベロッパプログラムのチームの役割と権限 を読んで下さい。


次に、ご自分の役割と Apple デベロッパプログラムのメンバーシップに応じて実行するタスクについては、このセクションの表を参照してください。(このガイドで使用する用語の定義については、用語集を参照してください。)


あなたがチーム·メートまたは管理していて App Store や Mac App Store にアプリを提出したい場合:


方法を学ぶ読みましょう
checkbox_unchecked_2x Xcode に Apple ID を追加Xcode に Apple ID アカウントを追加
checkbox_unchecked_2x バンドル ID を設定、チームにプロジェクトを割当ID とチーム設定の構成
配布用に Xcode のプロジェクトを構成
checkbox_unchecked_2x アプリサービスを設定機能の追加
checkbox_unchecked_2x デバイス上でアプリを起動デバイス上でアプリを起動
checkbox_unchecked_2x アプリの配布前に最終的設定手順を実行配布用に Xcode のプロジェクトを構成
checkbox_unchecked_2x 異なるデバイスで iOS、tvOS、watchOS アプリをテストアプリをテスト用にエクスポート(iOS、tvOS、watchOS)
checkbox_unchecked_2x テスト中に問題を修正クラッシュレポートの分析
checkbox_unchecked_2x 承認のため iTunes Connect にアプリをアップロードアプリの提出
checkbox_unchecked_2x ストアでアプリをリリース、維持iTunes Connect でアプリの管理
checkbox_unchecked_2x Apple デベロッパプログラム資産を維持署名 ID と証明書を維持する
ID、デバイス、プロファイルの維持
checkbox_unchecked_2x 資産に署名するコードの問題を修正トラブルシューティング


あなたが会社のチームエージェントまたは管理者の場合


方法を学ぶ読みましょう
checkbox_unchecked_2x チームメンバーを追加し、企業アカウントの役割を割り当てるチームの管理


App Store または Mac App Store にアプリを提出したい企業のチームメンバーである場合:


方法を学ぶ読みましょう
checkbox_unchecked_2x Xcode に Apple ID を追加Xcode に Apple ID アカウントを追加
checkbox_unchecked_2x バンドル ID を設定、チームにプロジェクトを割当ID とチーム設定の構成
配布用に Xcode のプロジェクトを構成
checkbox_unchecked_2x デバイス上でアプリを起動デバイス上でアプリを起動
checkbox_unchecked_2x 資産に署名するコードの問題を修正トラブルシューティング


あなたが、チームエージェントまたは Apple デベロッパエンタープライズプログラムで管理をしている場合:


方法を学ぶ読みましょう
checkbox_unchecked_2x あなたの証明書を管理し、アプリを配布Apple 開発者エンタープライズプログラムアプリの配布


あなたがチームのエージェントで、Mac App Store の外で Mac のアプリを配布する場合:


方法を学ぶには読みましょう
checkbox_unchecked_2x アプリの配布前に最終的設定手順を実行配布用に Xcode のプロジェクトを構成
checkbox_unchecked_2x デベロッパー ID で署名されたアプリを作成Mac App Store 外でのアプリの配布
checkbox_unchecked_2x 追加のデベロッパ ID 証明書を作成追加の開発者 ID 証明書の作成


Mac のアプリの場合、Mac アプリの署名 ID を選択 で説明したように、配布方法として[なし]を選択した場合、このガイドを読む必要はありません。


以下も参照


このガイドを読む前に、コードを記述するために使用するソフトウエアとツールに精通している必要があります。そうでない場合は、最初に読むべきプラットフォーム固有のチュートリアルがいくつかあります。次に、ストアにアプリを提出するための、プラットフォームに適したヒューマンインタフェースのガイドラインに続く技術の概要文書、最も重要なのは、ガイドラインをお読みください。


iOSMac
始めるにはアプリの配布クイックスタートアプリの配布クイックスタート
テクノロジーについて詳しく知るにはiOS 技術の概要
iOS アプリ·プログラミング·ガイド
tvOS 用アプリ・プログラミング・ガイド
watchOS 用アプリ・プログラミング・ガイド
Mac 技術の概要
Mac アプリプログラミングガイド
ユーザーインターフェイスのガイドラインについて詳しく知るiOS ヒューマン・インターフェイス・ガイドライン
App Store レビューガイドライン
Apple TV ヒューマン・インタフェース・ガイドライン
Apple Watch ヒューマン・インタフェース・ガイドライン
OS X ヒューマン・インタフェース・ガイドライン
Mac App Store レビューガイドライン
ツールについて詳しく知るXcodeの概要
iTunes Conect 開発者ガイド
シミュレータユーザーガイド
アプリケーションローダーの使用
Xcode の概要
iTunes Conect 開発者ガイド
アプリケーションローダーの使用
大規模なチームのためのツールについて学習Xcode サーバーと継続的統合ガイド
Xcode でのテスト
ソースコントロール管理のヘルプ
Xcode サーバーと継続的統合ガイド
Xcode でのテスト
ソースコントロール管理のヘルプ


アプリのレビュープロセスの詳細については、アプリのレビュー を参照してください。





次の章

目次
Xcode 9 の新機能
====================
  • アプリの配布について:序文
  • アプリの軽量化(iOS、tvOS、watchOS)
  • スライス(iOS、tvOS)
    ビットコード
    オンデマンド・リソース(iOS、tvOS)
  • アカウントの管理
  • Apple 開発者プログラムについて
    個人または企業としての登録を選択
    複数のチームに参加できます
    Xcode に Apple ID アカウントを追加
    総括
  • 配布用に Xcode のプロジェクトを構成
  • Xcode プロジェクトを作成する際のプロパティの設定
    プロジェクトの構成を開始する前に
  • ID とチーム設定の構成
  • バンドル ID について
    バンドル ID の設定
    署名 ID の選択(Mac)
    チームに Xcode プロジェクトの割り当て
    チーム・プロビジョニング·プロファイルの作成
    アプリのカテゴリの設定(Mac)
    バージョン番号とビルド文字列を設定
  • 展開情報の設定
  • 展開ターゲットの設定
    ターゲット・デバイスの設定(iOS、watchOS)
  • アプリアイコンと起動スクリーンファイルの追加
  • 画像の準備
    アセットカタログにアプリアイコンを追加
    起動スクリーンファイルの作成
    起動イメージの追加とスクリーンショットのキャプチャ
    個々のアプリアイコンと起動イメージファイルを設定
    アセットカタログにイメージを移行
    著作キーの設定(Mac)
  • ビルド設定の確認
  • iOS アプリのアーキテクチャを設定
    ベース SDK を設定する
    デバッグ情報の形式を設定
    総括
  • 機能の追加
  • 資格について
    始める前に
    アプリ・サンドボックスの設定(Mac)
  • iCloud サポートの追加
  • iCloud を有効にする
    キー値の保管の構成
    書類の保管の構成
    CloudKit を使用
    カスタムコンテナの指定
  • プッシュ通知の構成
  • プッシュ通知を有効に
    プッシュ通知クライアントの SSL 証明書の作成
    手順の確認
  • サーバーでクライアントの SSL 署名 ID のインストール
  • ゲームセンターを有効にする(iOS、tvOS、Mac)
    ゲームコントローラを有効にする(tvOS)
    ウォレットの構成 (iOS、WatchKit 拡張機能)
  • Apple ペイの構成 (iOS、WatchKit 拡張機能)
  • アプリ内購入を有効にする(iOS、tvOS、Mac)
    パーソナル VPN を有効にする (iOS、Mac)
  • マップの構成(iOS、WatchKit 機能拡張、Mac)
  • Xcode でマップを有効化
    ルーティングアプリの構成 (iOS、WatchKit 機能拡張)
    ルーティング方向を提供
    iTunes Connect でアプリレコードの作成
    ストアにビルドを提出
    iTunes Connect に地理的範囲ファイルのアップロード
  • 背景モードの構成 (iOS、tvOS、WatchKit アプリ)
  • アプリ内オーディオを有効にする (iOS)
  • キーチェーン共有の構成
  • 関連ドメインの構成 (iOS、WatchKit 拡張機能)
  • アプリグループの構成
    HomeKit 追加 (iOS、WatchKit 拡張機能)
    データ保護を有効にする (iOS、WatchKit 機能拡張、tvOS)
    HealthKit の追加 (iOS、WatchKit 機能拡張)
    無線アクセサリー構成の有効化 (iOS)
    ニューススタンドの構成(iOS、WatchKit 拡張機能)
    トラブルシューティング
    総括
  • デバイス上でアプリを起動
  • Mac アプリの起動
    デバイス上でアプリの起動(iOS、tvOS、watchOS)
    スキームメニューからデバイスを削除
    デバイスからアプリを削除(iOS、tvOS、watchOS)
    手順の確認
    トラブルシューティング
    チームのプロビジョニングプロファイルをより詳しく
    総括
  • テストの為アプリをエクスポート(iOS、tvOS、watchOS)
  • 臨時のプロビジョニングプロファイルについて
    テストデバイスの登録
    アプリのアーカイブ
    ストア外でのテスト用にアプリをエクスポート
  • Xcode を使ってテストデバイスにアプリをインストール
  • iTunes を使ってテストデバイスにアプリをインストール (iOS、watchOS)
    Apple コンフィギュレータ2 (iOS、watchOS、tvOS) を使用してテストデバイスにアプリをインストール
    Xcode サーバーを使ってアプリの配布
    テスターからのクラッシュレポートを勧誘
    臨時のプロビジョニングプロファイルをより詳しく
    総括
  • テストのためアプリをエクスポート (Mac)
    テスト用 Mac の登録
    アプリのアーカイブ
    チームプロビジョニングプロファイルを使ってアプリをエクスポート
    テスト用 Mac 上にアプリをインストール
    Mac のインストーラパッケージをテスト
    インストーラパッケージを作成
    インストーラパッケージをテスト
  • iTunes Connect にアプリをアップロード
    ストアのプロビジョニングプロファイルについて
    iTunes Connect でアプリレコードの作成
    バージョンとビルド文字列を更新
  • アプリをアーカイブ
  • アーカイブスキーム設定の確認
    アーカイブの作成
    iTunes Connect の検証テストの実行
    アプリをアップロード
  • TestFlight を使ったアプリの配布 (iOS、tvOS、watchOS)
  • クラッシュレポートの分析
  • クラッシュレポートサービスについて
    クラッシュレポートを表示する前に
  • クラッシュオーガナイザでクラッシュレポートの表示
  • クラッシュレポートの表示と検索
    クラッシュレポートの情報を編集
  • デバッグナビゲータでソースコードを開く
    クラッシュレポートの統計情報の表示
  • アプリ開発者とクラッシュデータの共有
  • デバイスウィンドウでクラッシュの表示とインポート
    Xcode でクラッシュの再現
  • ストアにアプリの提出
    提出用のアプリを用意
    ヒューマンインタフェースとストアガイドラインを確認
    iTunes Connect に追加情報を入力
    最終候補をアップロード
    アプリを提出
    総括
  • iTunes Connect でアプリの管理
  • iTunes Connect のユーザーの役割と権限について
    iTunes Connect へのアクセス
    iTunes Connect のユーザーの追加と役割の表示
    アプリレコードの作成
    iOS のアプリレコードに tvOS アプリを追加
    アプリのステータスの表示
    分析を表示
    カスタマーレビューの表示
    アプリの新しいバージョンを作成する
    総括
  • 会員センターでのチームの管理
  • Apple デベロッパプログラムのチームの役割と権限
  • チームの役割
    チームの特権
    チームのエージェント
  • チームメンバーを招聘し役割を割り当てる
  • チームメンバーを招聘する
    チームの役割を変更
    チームメンバーのデバイスを登録
    チームエージェントの役割を移動
    チームメンバーの削除
  • 署名 ID と証明書を維持する
  • 署名 ID と証明書について
    署名 ID とプロビジョニングプロファイルの表示
  • 署名 ID の作成
  • 手順の確認
  • 会員センターを使用し確認
    キーチェーンアクセスを使用し確認
    トラブルシューティング
    開発者 ID 証明書の追加作成
    なくなった中間証明権限をインストール
  • 証明書とプロファイルのエクスポートとインポート
    開発者プロファイルをエクスポート
    選択した証明書のエクスポート
    開発者プロファイルをインポート
    キーチェーンから署名 ID を削除
  • 証明書の破棄
  • 破棄する特権
    Xcode を使用して開発証明書のリセット
    会員センターを使用して証明書の破棄
    期限切れの証明書の交換
    証明書を再作成し関連するプロビジョニングプロファイルの更新
    プッシュ通知クライアントの SSL証明書の作成
  • コード署名 ID ビルドを設定する
  • トラブルシューティング
    署名証明書を詳しく
    総括
  • ID、デバイス、プロファイルの維持
  • アプリ ID の登録
    アプリ ID の編集
    アプリ ID の削除
    チーム ID を検索する
  • 会員センターを使用してデバイスを登録する
  • デバイス ID の検索
  • Xcode を使用してデバイス ID を検索
    iTunes を使って iOS のデバイス IDを検索(iOS,tvOS)
    システム情報を使用してデバイス ID 検索(iOS,tvOS,Mac)
    個々のデバイスを登録
  • 複数のデバイスを登録
  • Apple コンフィギュレータを使用してプロパティリストのデバイスファイルを作成
    プレインテキストのデバイスファイルの作成
    デバイスファイルのアップロード
    あなたの iOS または Apple TV デバイスにプレリリースのインストール
    会員センターを使ってデバイスを無効/有効にする
    デバイス上のアプリの管理
    デバイスからアプリの削除
    会員センターを使用してプロビジョニングプロファイルの作成
    開発用プロビジョニング・プロファイルの作成
    アドホック・プロビジョニング・プロファイルの作成(iOS、tvOS、watchOS)
    ストアのプロビジョニングプロファイルの作成
    Xcode でプロビジョニングプロファイルのダウンロード
    カスタム・プロビジョニング・プロファイルの使用
    トラブルシューティング
    Xcode 管理のプロビジョニング・プロファイルへの移行
    会員センターでプロビジョニングプロファイル編集
    期限切れのプロビジョニングプロファイルの更新
    デバイス上のプロビジョニングプロファイルの確認と削除
    会員センターからプロビジョニングプロファイルを削除
    会員センターからプロビジョニングプロファイルをダウンロード
    アプリのバイナリ資格の確認
    総括
    Apple 開発者エンタープライズプログラムアプリの配布
    Apple 開発者エンタープライズプログラムアプリの開発
    あなたのチームをビルドする(チームエージェント)
    共有したチームプロビジョニングプロファイルの作成 (チーム管理者)
    開発の開始(チームメンバー)
    Apple 開発者エンタープライズプログラムアプリのテスト
    追加のエンタープライズ配布証明書の作成
    期限切れの証明書とプロビジョニング・プロファイルの管理
    あなたのアプリの社内でのエクスポート
    アーカイブの作成
    iOS アプリのファイルの作成
    手動でエンタープライズ開発者を信頼
    サーバーツールについて詳しく知る
    総括
  • Mac App Store 外でのアプリの配布
  • 開発者 ID の署名付きアプリとインストーラパッケージの作成
    開発者 ID にコード署名 ID の設定
  • 開発者 ID 証明書の作成
  • アーカイブの作成
    開発者 ID 署名のアプリの検証
    開発者 ID 署名のアプリのエクスポート
    インストーラパッケージに署名
  • 手順の確認
  • ゲートキーパーの有効化と無効化
  • ゲートキーパーの動作のテスト
  • 開発者 ID で署名されたアプリのテスト
    起動動作をテスト
    ゲートキーパーの動作テストに備えるため
    総括
  • トラブルシューティング
  • 証明書の問題
  • コード署名 ID をなくした時
    一致するプロビジョニングプロファイルがない時
    署名 ID の秘密鍵がなくなった場合
    開発者 ID 証明書の秘密鍵がなくなった場合
    中間証明書がないので証明書が無効
    証明書は、信頼に問題あり
    証明書は、有効期限が切れている
    要求がタイムアウトした
    プロビジョニングプロファイルや署名 ID が Xcode のメニューに表示されない
  • プロビジョニングの問題
  • デバイスにインストールされたプロビジョニングプロファイルが無効
    プロビジョニングプロファイルが会員センター内で無効とされる
    そのようなプロビジョニングプロファイルは見つからない
  • ビルドとコード署名の問題
  • Xcode にはプロビジョニングプロファイルが見つからない
    Xcode は、証明書を信頼していない
    コード署名 ID ビルド設定がどの証明書とも一致しない
    キーチェーンが、重複したコード署名 ID を含む
    プロビジョニングプロファイルのアプリ ID がアプリのバンドル ID と一致しない
    あなたのデバイスが、スキームツールバーメニューでリストされないか不適格
    デバッグ情報の問題
    Xcode はデバイスを接続すると不明の iOS を検出したというダイアログが表示
    アーカイブと提出の課題
    サポートされている機能
    文書改訂履歴
    用語集