機能の追加


特定のアプリのサービス、つまりゲームセンターやアプリ内購入などは、ストアを介して配布する Apple デベロッパプログラムのメンバーのみに利用可能です。これらのサービスは、Xcode プロジェクト、会員センター、および時々 iTunes Connect で追加設定が必要になります。iTunes Connect の設定を必要としないアプリサービスも、Apple デベロッパエンタープライズプログラムアプリで利用可能です。いくつかのアプリ・サービスは、ゲームやニューススタンドアプリなどの特定の種類のアプリのためのものであり、アプリ内購入や iAD ネットワークなどの収入のための追加のソースを提供します。


introart_2x


Apple は、あなたが知る事なしにあなたのアプリが変更され、配布される事からユーザーのデータとアプリの両方を保護するための基本的なセキュリティモデルを実装しています。そのため、あなたのアプリは、コード署名され、指定したアプリ・サービスのみを使用するようにプロビジョニングされています。Xcode を使ってアプリに機能を追加すると、Xcode は自動的にそれらを使用するようにプロジェクトを構成します。資格を有効にするには、Xcode はあなたのチームのためにコード署名とプロビジョニング資産を作成し、あなたのために、コード署名ビルド設定を設定します。 Xcode は、選択したアプリ・サービスを有効にするために、必要に応じてワイルドカード・アプリ ID と明示的なアプリ ID を作成します。いくつかのアプリ・サービス - ゲームセンターやアプリ内購入など - は、会員センターとiTunes Connect で追加の設定が必要です。プッシュ通知は、会員センターで追加の設定が必要です。


この章では、あなたのアプリからアプリ・サービスにアクセスするために実行するすべての手順を説明します。あなたのタイプのアプリで利用可能な機能のリストについては、サポートされている機能 を参照して下さい。


資格について


資格は、それが普通持っている枠を越えて、更なる追加の許可を与え、特定のアプリ、ツール、またはその他の実行可能ファイルに付与された一つの権利です。資格 と言う用語は、最も一般的には、サンドボックスの文脈で使用され、アプリ ID のための、より低い程度に使われます。場所に関係なく、資格はあなたのアプリのコード署名に含まれる、構成情報の一部であり、あなたのアプリが特定のリソースにアクセスでき、特定の操作を実行できるように、システムに告げるものです。実際には、資格は、特定の操作が発生することができるように、アプリのサンドボックスと機能を拡張します。


Xcode でアプリ・サービスを有効にすると、Xcode プロジェクトと会員センター内のアプリ ID のいくつかの資格を設定します。アプリ ID で有効なアプリ・サービスは、1つ以上のアプリケーションが使用するサービスの優良物リストとして機能します。バンドル ID と正確に一致する明示的なアプリ ID をデフォルトにしていくつかのアプリ・サービスは有効になります。Xcode プロジェクトの構成はアプリが実際に使用するサービスを指定します。


始める前に


この章で説明するオプションはすべて、ターゲットのプロジェクトエディタで[機能(Capabilities)] ペインに配置されています。


下のスクリーンショットは、iOS アプリの機能を示しています。これらアプリ・サービスのサブセットは、Mac アプリにも利用可能です。


4_capabilitieseditor_2x


機能ペインを開くには


  1. [表示(View)] > [ナビゲーター(Navigators)] > [プロジェクトナビゲータを表示(Show Project Navigator)] を選択します。
  2. [プロジェクト/ターゲット(Project/Target)] のポップアップメニューから、[ターゲット] を選択するか、または第二のサイドバーが表示された場合はその[ターゲット(Targets)] セクションから、選択してください。

  3. 4_choose_target_2x


  4. アプリに追加できるアプリ・サービスを表示するには、[機能(Capabilities)] をクリックします。



Xcode は、必要なら、コード署名とプロビジョニング資産を作成しますが、一部の資産は他のものに依存しているため、機能を有効にすると、問題を修正するように求める表示として、ダイアログが現れる事があります。たとえば、プロジェクトにチームを割り当てるよう求められたり、iOS、tvOS、watchOS の場合、Xcode がチームプロビジョニングプロファイルを作成できるようにデバイスを接続するように求められることがあります。開発プロビジョニングプロファイルは、機能を有効にするために必須ではありませんが、機能を使用してアプリをビルドして起動するには必要です。これらのダイアログや警告を避けるため チーム・プロビジョニング·プロファイルの作成 で説明したように、今コード署名 ID を作成し、チームのプロビジョニング・プロファイルを作成して下さい。それ以外の場合は、発生した問題を解決する方法の トラブルシューティング を読んで下さい。


アプリ・サンドボックスの設定(Mac)


悪意のあるコードがあなたの Mac アプリを利用した場合、サンドボックスは、ユーザデータが、盗まれ、破損、または削除されるのに対する防御の最後のラインを提供します。サンドボックスはまた、アプリ内または、リンクしたフレームワークで起こるコーディングエラーによる被害を最小限に抑えることができます。単純にサンドボックスを有効にすると、アプリがシステムの他の部分と相互作用する方法に関する最大レベルの制限を提供します。Mac App Store で配布されるすべてのアプリは、サンドボックスを使用する必要があります。そのため、もし iTunes Connect にアプリをアップロードする場合は、開発時にサンドボックスを有効にしてください。


この機能を有効にしてサンドボックスを構成してから、必要に応じて機能の特定の種類の権利を付与します。




アプリ・サンドボックスを設定するには


  1. [機能(Capabilities)] ペインで、アプリ・サンドボックスが有効になっていない場合は、アプリサンドボックス・セクションのスイッチをクリックします。

  2. 4_enableappsandbox1_2x


    Xcode はプロジェクトに資格ファイルを追加し、自動的にいくつかの資格のデフォルト値を入力します。Xcode はまた、アプリ・サンドボックスの資格も可能にします。


  3. ターゲットがそのジョブを実行する必要がある機能の最小セットを記述するために、この領域のアプリ・サンドボックスのチェックボックスを使用します。

4_enableappsandbox_2x


ファイルの型の特定の権限も設定できます。ファイルの型へのアクセスを設定するには、ファイルの型を最高に記述する行のポップアップメニューから[許可(permission)] を選択して下さい。



4_appsandboxfileaccess_2x


アプリ・サンドボックスの資格の完全な詳細については、資格キーリファレンス を参照してください。既存のアプリでサンドボックスを有効にする場合は、アプリ・サンドボックス・デザイン・ガイド を読み、サンドボックス・アプリがアクセスできる場所について学習してください。


iCloud サポートの追加


iCloud ストレージを使用すると、別のデバイス上で動作しているあなたのアプリの複数のインスタンス間でユーザーやアプリのデータを共有できます。また、あなたのチームが開発した、異なるアプリ間でデータも共有できます。あなたは、iCloud のどのサービスを、キー値記憶、文書の保存、または CloudKit を使って、あなたが保存し、データを取得したい方法に応じてどう使用するかを選択します。ドキュメントの保存と CloudKit では、あなたのアプリが使用するコンテナを指定して、複数のアプリで共有されるカスタムコンテナを作成できます。あなたのアプリは、それがすでに存在し、Xcode プロジェクトのサービス固有の権利を設定していない場合は、明示的なアプリ ID を作成することを含む iCloud を使用するようにプロビジョニングする必要があります。


iCloud を有効にする


iCloud のサービスを選択し、構成する前に、Xcode で iCloud を有効にします。iCloud を有効にするには、iCloud のセクションのスイッチをクリックします。Xcode は、あなたのアプリが iCloud を使用するようにプロビジョンします。


4_enableicloud_2x


キー値の保管の構成


キー値保管は、アプリが、ユーザーの他のデバイス上で実行されているそれ自身の他のインスタンスと少量のデータを共有できます。キー値保管用のコンテナ ID は iCloud.[$(TeamIdentifierPrefix)].[$(CFBundleIdentifier)] で、ここでチーム ID はあなたのチームに割り当てられた一意の文字列です。キー値の保管を有効にするには、"キー値の保管(Key-value storage)" チェックボックスを選択します。好みのキー値の保管を使用する方法を学習するには、iCloud のデザインガイド をお読みください。


4_enablekeyvaluestorage_2x


文書保管の構成


文書の保管は、ユーザーの iCloud のアカウントにユーザーの文書とアプリのデータを保管します。iCloud に文書を保管するのを有効にするには、"iCloud 文書(iCloud Documents)" チェックボックスを選択します。必要に応じて、Xcode は文書保管用のデフォルトの iCloud コンテナを作成します。文書保管を使用する方法については、iCloud のデザインガイド をお読みください。


重要: チームエージェントまたは管理者だけが文書保管の構成をできます。


CloudKit を使用


保管するために CloudKit を使用して、レコードとして、アプリのデータを取得し、複数のデバイスからアクセスします。さらに、異なるユーザによって実行されるあなたのアプリのすべてのインスタンスがアクセスできる public の領域にデータを保管できます。CloudKit を有効にして、プロジェクトに CloudKit フレームワークを追加するには、CloudKit チェックボックスを選択して下さい。あなたの CloudKit コンテナデータモデルとレコードを管理するには、[CloudKit ダッシュボード] ボタンをクリックします。CloudKit の使用を開始するには、CloudKit クイックスタート を読み、CloudKit の詳細については、CloudKit フレームワークリファレンス をお読みください。必要に応じて、Xcode は CloudKit のデフォルトの iCloud コンテナを作成します。


重要: チームエージェントまたは管理者だけが CloudKit の構成をできます。


カスタムコンテナの指定


ドキュメントの保管と CloudKit の場合、デフォルトのコンテナ ID は iCloud.$(CFBundleIdentifier) であり、明示的なアプリ ID と一致します。必要に応じて、1つ以上のカスタム・コンテナを追加し、アプリ間で共有できます。別のアプリで使用される既存のコンテナ ID を選択するか、新しいものを作成できます。


重要: チームエージェントまたは管理者だけがカスタム・コンテナの指定をできます。




コンテナ ID の選択または選択を解除するには


  1. iCloud の設定で、"カスタムコンテナを指定(Specify custom containers)" を選択します。
  2. 必要に応じて、他のアプリで使用されるコンテナ ID をダウンロードするには、表の下の[更新(Refresh)] ボタンをクリックします。
  3. コンテナ ID の左で、コンテナを使用するにはチェックボックスを選択し、コンテナを使用しない場合はチェックボックスを選択解除します。
  4. Xcode は Xcode のプロジェクトの資格ファイル内のコンテナ ID のリストを更新します。


4_specifycontainers_2x


既存のコンテナ ID が十分でない場合、アプリのため別のコンテナ ID を作成して下さい。




コンテナ ID を追加するには


  1. 必要に応じて、"カスタムコンテナを指定" を選択します。
  2. 表の下にある[追加] ボタン(+)をクリックします。
  3. 表示されるダイアログで、追加したいコンテナの ID を入力します。
  4. コンテナ ID は iCloud. から始まり、iCloud.com.example.gkumar.shared. のように、DNS の逆表記の文字列が続きます。


    警告: コンテナ ID を削除することはできないので、慎重に文字列を選択して下さい。


    4_addicloudcontainerdialog_2x

  5. [OK] をクリックします。
  6. Xcode は Xcode プロジェクトの資格ファイルと会員センターに、新しいコンテナ ID を追加します。


iCloud コンテナの選択についての指針は、iCloud のデザインガイド をお読みください。


プッシュ通知の構成


Apple プッシュ通知サービス (APN) は、ユーザー用の情報を持っているとユーザーに通知するために、フォアグラウンドで実行されていないアプリに通知する事を許可します。プッシュ通知を有効にするには、Xcode を使用してください。必要に応じて、Xcode は有効な APN の資格と明示的なアプリ ID を作成し、明示的なアプリ ID を使用して、チームプロビジョニングプロファイルを作成します。その後、サーバー上のクライアントの SSL 証明書とキーをインストールし、対応するクライアントの SSL 証明書を生成し、ダウンロードします - このステップは完全にプッシュ通知を有効にします。


プッシュ通知を有効に


まず、Xcode プロジェクトでプッシュ通知を有効にします。


プッシュ通知を有効にするには


  1. [機能(Capabilities)] ペインで、プッシュ通知が有効でない場合、プッシュ通知セクションのスイッチをクリックします。

  2. 4_enablepushnotifications_2x


クライアントの SSL 証明書を作成するまで、会員センターでは、プッシュ通知サービスが 構成可能 (Configurable) として表示されます (有効(Enabled) ではありません)。


プッシュ通知クライアントの SSL 証明書の作成


通知サーバーが APNs に接続するのを許可するプッシュ通知 クライアント SSL 証明書 を生成するために、会員センターを使用して下さい。各アプリ ID がは自身のクライアント SSL 証明書を持つ事が要求されます。会員センターが生成するクライアント SSL 証明書は、あなたのアプリが開発とプロダクション環境両方への接続を可能にするユニバーサル証明書です。


重要: チームエージェントまたは管理者だけが Apple 通知サービス SSL 証明書を作成できます。




クライアントの SSL 証明書を生成するには


  1. 証明書、識別子&プロファイル で、[証明書(Certificates)] を選択して下さい。
  2. 右上隅の[追加] ボタン (+) をクリックします。

  3. 12_ios_apns_certificate_1_2x


  4. [生産(Production)] の下で、"Apple プッシュ通知サービス SSL(サンドボックス&プロダクション)" チェックボックスを選択し、[続行(Continue)] をクリックします。

  5. 12_ios_apns_certificate_2_2x


  6. アプリ ID ポップアップメニューからアプリ ID を選択して、[続ける] をクリックします。
  7. あなたのバンドル ID と一致する明示的なアプリ ID を選択してください。


  8. あなたの Mac 上に証明書要求を作成するために次のウェブページ上の指示に従い、[続ける] をクリックください。
  9. [ファイルを選択(Choose File)] をクリックします。
  10. 表示されるダイアログで、(.certSigningRequest 拡張子を持つ) 証明書要求ファイルを選択し、[選択(Choose)] をクリックします。
  11. [生成(Generate)] をクリックします。

  12. 12_ios_apns_certificate_3_2x


  13. 必要に応じて、[ダウンロード(Download)] をクリックします。
  14. [完了(Done)] をクリックします。

手順の確認


会員センターで、指定された環境でプッシュ通知サービスの状態 (開発または配布) を、Configurable(設定可能) から Enabled(有効) に変更します。


アプリ ID の設定を確認するには


  1. 証明書、識別子&プロファイル で、[ID (Identifiers)] を選択し、ID の下で アプリ ID を選択して下さい。
  2. バンドル ID と一致する明示的なアプリ ID を選択します。
  3. 「有効(Enabled)」が続く緑の円は、[プッシュ通知(Push Notifications)] の行に表示され、[開発や配布] の列は、以前に作成したクライアントの SSL 証明書の種類に応じて表示されます。[開発や配布] 列のいずれかで「構成可能(Configurable)」が続く黄色い円は、不足しているクライアントの SSL 証明書を示しています。


12_ios_apns_certificate_4_2x


サーバーでクライアントの SSL 署名 ID のインストール


プロバイダのコードを実行し、APN の開発や生産バージョンと接続するサーバ上で、以前取得した SSL 配布署名 ID をインストールして下さい。あなたはそれを作成した Mac 上のキーチェーンから署名 ID をエクスポートし、それをサーバー上の適切な場所にコピーします。


クライアントの SSL 署名 ID をエクスポートするには


  1. キーチェーンアクセスを起動します。
  2. カテゴリーのセクションで、[私の証明書(My Certificates)] を選択します。
  3. エクスポートし、その内容を開示したい証明書を検索します。
  4. あなたには、証明書と秘密鍵の両方が表示されます。


  5. 証明書とキーの両方を選択し、[ファイル(File)] > [項目をエクスポート(Export Items)] を選択します。
  6. [ファイルフォーマット] ポップアップメニューから、ご使用のサーバーが受け付けるファイルフォーマットを選択します。
  7. [別名で保存(Save As)] フィールドにファイル名を入力し、[保存] をクリックします。
  8. 個人情報交換形式内のファイルは、.p12 拡張子が付いていて、プライバシー強化メール形式内のファイルは .pem の拡張子が付いています。


プッシュ通知サーバの問題を解決する技術については、プッシュ通知のトラブルシューティング をお読みください。


ゲームセンターを有効にする(iOS、tvOS、Mac)


ゲームセンターは、Apple のソーシャルゲームネットワークです。これは、プレイヤーがゲームセンターサービスにデバイスを接続し、情報を交換するのを許可します。

ゲームセンターを使用するには、まず Xcode でゲームセンターを有効にしてください。


ゲームセンターを有効にするには


  1. [機能(Capabilities)] ペインで、ゲームセンターが有効になっていない場合は、ゲームセンターセクションのスイッチをクリックして下さい。

4_enablegamecenter_2x


Xcode は自動的にあなたのアプリを、プロジェクトに GameKit フレームワークを追加して、ゲームセンターを使用するようにプロビジョニングします。


Mac アプリの場合、Xcode の[機能(Capabilities)] ペインに位置するアプリサンドボックス・セクション内の発信ネットワーク資格も、Xcode は設定します。あなたのアプリが、ネットワーク接続も待機する場合は、着信接続を許可する必要があります。追加のネットワーク資格を設定するには、アプリ・サンドボックスの構成(Mac のみ) をお読みください。


あなたの GameKit コードを書く方法については、ゲームセンター・プログラミング・ガイド をお読みください。iTunes Connect でアプリを構成するには、アプリのレコードを (明示的なアプリ ID を入力します) を作成するため iTunes Connect の開発者ガイド新しいアプリを追加 を読み、またゲームの機能を設定するためには iTunes Connect のゲームセンター設定ガイド をお読みください。


ゲームコントローラを有効にする(tvOS)


ゲームコントローラは、ゲーム内のアクションをトリガするために物理的な制御を提供します。


ゲームコントローラのフレームワークを使用するには、Xcode でゲームコントローラを有効にします。


ゲームコントローラを有効にするには


  1. [機能(Capabilities)] ペインで、ゲームコントローラが有効になっていない場合は、ゲームコントローラセクションのスイッチをクリックします。

4_enablegamecontrollers_2x


ゲームコントローラを構成し、ゲームコントローラのフレームワークのコードを書く方法については、ゲームコントローラのプログラミングガイド をお読みください。


ウォレットの構成 (iOS、WatchKit 拡張機能)


ウォレットは、情報のデジタル表現の提示であり、クーポン、ショーのためのチケット、または搭乗券のような、つまり、ユーザーが現実世界の製品やサービスを償還することができるものです。あなたはいくつかの方法でウォレットを使用できます。


まず、Xcode プロジェクトでウォレットを有効にしてください。


ウォレットを有効にするには


  1. [機能(Capabilities)] ペインで、ウォレットが有効でない場合、ウォレットセクション内のスイッチをクリックします。

4_enablepassbook_2x


Xcode は自動的に、あなたのアプリが、ウォレットを使用して、プロジェクトに PassKit フレームワークを追加するようにプロビジョニングします。


オプションで、あなたのパス型 ID のサブセットにアプリを制限できます。あなたがパスを使用する複数のアプリを開発する場合に特に便利です。あなたがパス型 ID を持っていない場合は、この機能を有効にする前に作成して下さい。


パス型 ID を作成するには


  1. 証明書、識別子&プロファイル で、[ID (Identifiers)] を選択して下さい。
  2. [ID(Identfiers)] の下で、パス型 ID を選択します。
  3. 右上隅の[追加] ボタン (+) をクリックします。
  4. 説明と ID を入力し、[続ける] をクリックします。

  5. 4_createpasstypeid_2x


  6. 設定を確認し、[登録(Register)] をクリックします。
  7. [完了(Done)] をクリックします。

その後、パス型 ID のセットにあなたのアプリを制限するには、Xcode を使用できます。


パス型 ID のサブセットを使用して、あなたのアプリを制限するには


  1. [機能(Capabilities)] ペインで、必要に応じて、ウォレットの開閉用三角ボタンをクリックします。
  2. 「パス型のサブセットを許可する」を選択します。
  3. 会員センターにパス型 ID がない場合は、ラジオボタンは「すべてのチームにパス型を許可する」になります


  4. 必要であれば、あなたのパス型の ID を表示するように、パス型リストの下の[更新(Refresh)] ボタンをクリックします。

  5. 4_selectpasstypeids_2x


  6. 使用したいパス型 ID を選択します。

あなたのアプリでパス型 ID を使用するには、ウォレット開発ガイド 内の パス型 ID とチーム ID の設定 をお読み下さい。


Apple ペイの構成 (iOS、WatchKit 拡張機能)


Apple ペイは、ユーザーが安全に、デバイスに保存されている支払情報を使用して、物理的な商品やサービスの支払いを可能にします。


Apple ペイを有効にして、取引先 ID を作成するには


  1. [機能(Capabilities)] ペインで、Apple ペイが有効になっていない場合は、Apple ペイセクションのスイッチをクリックします。
  2. Apple ペイ識別子表の下にある[追加]ボタン(+) をクリックします。
  3. 表示されるダイアログで、識別子の名前を入力し、[OK]をクリックします。

4_enableapplepay_2x


Apple ペイの詳細については、Apple ペイプログラミング・ガイドPassKit Framework リファレンス をお読みください。


アプリ内購入を有効にする(iOS、tvOS、Mac)


アプリ内購入は、ストアに接続し、安全にユーザーからの支払いを処理できるようにすることで、あなたのアプリに直接ストアを埋め込みます。強化された機能のために、またはあなたのアプリで使用可能な追加コンテンツの支払いを収集するために、アプリ内購入を使用できます。Xcode プロジェクトでこの技術を構成した後、あなたは、iTunes Connect でそれを構成します。また、あなたのアプリ内購入を作成するため iTunes Connect を使用することもできます。


アプリ内購入を有効にするには


  1. [機能(Capabilities)] ペインで、アプリ内購入が有効でない場合は、アプリ内購入セクションのスイッチをクリックします。
4_enableinapppurchase_2x


Xcode は自動的に、プロジェクトに StoreKit フレームワークを追加し、アプリ内購入を使用するようにプロビジョニングします。




アプリ内購入のコードを記述する方法については、アプリ内購入のプログラミングガイド をお読みください。アプリ・レコードを作成し、明示的なアプリ ID を iTunes Connect で入力するには、iTunes Connect の開発者ガイド新しいアプリを追加 をお読みください。アプリ内購入を作成しアップロードするには、iTunes Connect のアプリ内購入の構成ガイド をお読み下さい。


パーソナル VPN を有効にする (iOS、Mac)


あなたのアプリがネットワーク拡張フレームワークを使用して、カスタム・システム VPN 構成を作成し、制御することを可能にするパーソナル VPN を有効にします。


パーソナル VPN を有効にするには


  1. [機能(Capabilities)] ペインで、パーソナル VPN が有効になっていない場合は、パーソナル VPN セクションのスイッチをクリックします。

4_enablepersonalvpn_2x


Xcode は自動的にあなたのアプリが、プロジェクトにネットワーク機能拡張フレームワークを追加し、パーソナル VPN を使用するようにプロビジョニングします。


ネットワーク機能拡張フレームワークの詳細については、ネットワーク機能拡張fレームワークリファレンス を参照してください。


マップの構成(iOS、WatchKit 機能拡張、Mac)


マップサービスは、アプリが方向を感知したり、方向を表示するために、マップ・アプリに依頼できます。また、ポイント・ツー・ポイントの方向を表示する事ができる iOS アプリはルーティング・アプリとして登録することができ、マップおよび他のアプリにそれらの方向を利用可能にします。マップのサービスを有効にするには Xcode を使用して下さい。iOS のルーティングアプリの場合、地理的範囲のファイルをアップロードするには iTunes Connect を使用して下さい。


MapKit フレームワークのコードを書く方法については、場所とマップのプログラミング・ガイド をお読みください。


Xcode でマップを有効にする


Xcode プロジェクト内のマップを有効にし、iOS のルーティングアプリのため、一つ以上のサポートされているモードを選択します。


マップと選択モードを有効にするには


  1. [機能(Capabilities)] ペインで、マップが有効になっていない場合、マップセクション内のスイッチをクリックして下さい。

  2. 4_enablemaps1_2x


  3. iOS のルーティングアプリの場合、以下のチェックボックスから一つ以上のサポートされているモードを選択します。
  4. 1つ以上のサポートされたルーティングモードを選択する必要があります。


    4_enablemaps_2x


ルーティングアプリの構成 (iOS、WatchKit 機能拡張)


他のアプリのためのポイント・ツー・ポイントの方向を提供するアプリを構成するための追加手順を実行して下さい。続行する前に、あなたがルーティングアプリを構成するために実行するタスクを確認して下さい。


タスク
checkbox_checked_2xXcode でマップを有効にします。
checkbox_checked_2xXcode 内の1つ以上のサポートされているモードを選択します。
checkbox_unchecked_2xルーティングの方向を提供するコードを書きます。
checkbox_unchecked_2xアプリ・レコードを作成し、必要なら、アプリの地理的範囲のファイルをアップロードします。
checkbox_unchecked_2xストアにアプリのビルドをアップロードします。
checkbox_unchecked_2x必要であれば、アプリの地理的範囲ファイルをアップロードします。


ルーティング方向を提供


ルーティングアプリを作成する方法を学習するには、場所とマップのプログラミングガイドルーティングアプリ(iOS のみ) として登録 をお読み下さい。


iTunes Connect でアプリレコードの作成


iTunes Connect でアプリ・レコードを作成するには、iTunes Connect の開発者ガイド新しいアプリを追加 の手順に従ってください。ルーティングアプリは、アプリがサポートする領域を定義する地理的範囲ファイルを提供しなければなりません。あなたはアプリ・レコードを作成するか、バイナリをアップロードした後に、「iTunes Connect に地理的範囲ファイルのアップロード」で説明するように、地理的範囲ファイルをアップロードできます。


ストアにビルドを提出


iTunes Connect にバイナリをアップロードするには、ストアにアプリの提出 の手順に従ってください。


iTunes Connect に地理的範囲ファイルのアップロード


ルーティングアプリを提出する場合は、地理的範囲ファイルをアップロードするまでは、Apple は承認プロセスを開始しません。


アプリをアップロードした後、地理的範囲ファイルをアップロードするには

  1. iTunes Connect にサインインします。
  2. iTunes Connect のホームページ上で、[私のアプリ(My App)] をクリックします。
  3. 編集したいアプリを検索し、大きいアイコンかアプリ名をクリックします。
  4. [バージョン(Version)] ペインが表示されます。

  5. 編集したいアプリのバージョンをクリックします。
  6. バージョン情報が下に現れます。

  7. [一般的アプリ(General App)] 情報のセクションにスクロールします。
  8. ルーティングアプリの範囲ファイルの下の[ファイルを選択(Choose File)] ボタンをクリックします。

  9. 4_upload_geo_file_2x


  10. ファイルを検索し、[選択(Choose)] をクリックします。

  11. ファイルが正しくフォーマットされていないか、または間違ったファイル拡張子を持っている場合は、エラーメッセージが表示されます。




背景モードの構成 (iOS、tvOS、WatchKit アプリ)


背景モードを有効にすると、あなたのアプリが背景での実行を継続することができます。


背景モードを有効にするには


  1. [機能(Capabilities)] ペインで、背景モードが有効になっていない場合、背景モードのセクションでスイッチをクリックします。

  2. 4_enablebackgroundmodes1_2x


  3. 必要に応じて、下に示すチェックボックスからサポートされているモードを選択します。

  4. 4_enablebackgroundmodes_2x


    Xcode は情報プロパティリストに背景モードを追加します。


背景モードの選択のガイダンスについては、iOS 用アプリ・プログラミング・ガイドバックグラウンドで実行 をお読みください。


アプリ内オーディオを有効にする (iOS)


アプリ内オーディオを有効にすると、あなたのアプリが他のアプリで使用できるオーディオをエクスポートできるようになります。


アプリ内オーディオを有効にするには


  1. [機能(capabilities)] ペインで、アプリ内オーディオが有効になっていない場合、アプリ内オーディオセクションのスイッチをクリックします。

4_enableinterappaudio_2x


Xcode は自動的に、あなたのアプリが、アプリ内オーディオを使用して、プロジェクトにオーディオツールボックスフレームワークを追加するようにプロビジョニングします。オーディオツールボックスフレームワークのコードを書く方法については、オーディオツールボックスフレームワークリファレンス をお読みください。


キーチェーン共有の構成


キーチェーン共有を有効にすると、あなたのアプリがチームによって開発された他のアプリでキーチェーンのパスワードを共有できるようになります。




キーチェーン共有を有効にするには


  1. [機能(Capabilities)] ペインで、キーチェーン共有が有効になっていない場合は、キーチェーン共有セクション内のスイッチをクリックします。

4_enablekeychain_2x


Xcode は、資格ファイルに keychain-access-groups キーを追加します。


そうしたい場合は、キーチェーンアクセスグループのセットにあなたのアプリを制限できます。




キーチェーンアクセスグループのセットにあなたのアプリを制限するには


  1. [機能(Capabilities)] ペインで、必要に応じて、キーチェーン共有の開閉用三角形をクリックします。
  2. キーチェーングループ領域の下部にある[追加(Add)] ボタン(+) をクリックします。
  3. 表の中のプレースホルダーテキストをダブルクリックし、追加したいキーチェーン・アクセスグループを入力します。

4_enablekeychain2_2x


キーチェーンアクセスグループを削除するには、キーチェーングループ領域で選択し、[削除(Delete)] ボタン(-)をクリックします。


関連ドメインの構成 (iOS、WatchKit 拡張機能)


あなたのアプリが特定のサービス-Safari がパスワードや活動の継続を保存するようなーとしてアクセスするためのドメインに関連付けられていることをアプリでしたい場合は、関連ドメインを有効にします。


関連ドメインを有効にするには


  1. [機能(Capabilities)] ペインで、関連ドメインが有効でない場合、関連ドメインセクションのスイッチをクリックします。
  2. ドメインの表の下にある[追加(Add)] ボタン(+) をクリックします。
  3. 表内のプレースホルダーテキストをダブルクリックし、追加したいドメイン名を入力します。

4_addassociateddomains_2x


アプリグループの構成


共有コンテナにアクセスするのに複数のアプリを許可し、アプリ間の追加のプロセス間通信を可能にするには、アプリグループを使用してください。アプリのグループを有効にするには、[機能(Capabilities)] のペインで、[アプリグループ] セクション内のスイッチをクリックします。表から、既存のアプリグループを選択するか、アプリグループを追加できます。


アプリのグループを選択するか、選択解除するには


  1. 必要に応じて、会員センターからコンテナ ID をダウンロードするには、表の下の[更新(Refresh)] ボタンをクリックします。
  2. コンテナ ID の行で、コンテナを使用するにはチェックボックスを選択し、コンテナを使用しないようにするにはチェックボックスを選択解除します。
  3. Xcode は Xcode プロジェクトの資格ファイル内のアプリグループのリストを更新します。


既存のアプリグループが十分でない場合、別のアプリグループを作成します。


アプリグループを作成するには


  1. アプリグループの表の下にある[追加(Add)] ボタン(+)をクリックします。

  2. 4_addappgroupcontainers_2x


  3. 表示されるダイアログで、テキストフィールドにコンテナ ID を入力し、[OK] をクリックします。
  4. アプリグループのコンテナ ID は、group で始まり、DNS の逆表記の文字列が続きます。


HomeKit 追加 (iOS、WatchKit 拡張機能)


HomeKit は、あなたのアプリが、ユーザーのホームと通信し、接続された付属品を制御できます。新しい付属品は、より多くの接続性と優れたユーザーエクスペリエンスを提供しているホームに導入されています。 HomeKit は、これらの付属品と通信し、ホームの構成を作成するための標準的な方法を提供します。シミュレートされた付属品にあなたの HomeKit アプリが通信する事をテストするために HomeKit アクセサリシミュレータを使用してください。


HomeKit の資格およびプロジェクトへの HomeKit フレームワークの追加をするには、HomeKit セクションのスイッチをクリックします。


4_enablehomekit_2x


HomeKit アクセサリシミュレータは、Xcode と一緒には配布されていません。


HomeKit アクセサリシミュレータをダウンロードするには


  1. [ダウンロード HomeKit アクセサリシミュレータ(Download HomeKit Accessory Simulator)] をクリックします。
  2. または、[Xcode] > [開発ツールを開く(Open Developer Tool)] > [その他の開発者ツール(More Developer Tools)] を選択します。

  3. ブラウザでは、DMG ファイル"Xcode のハードウェア IO ツール(Hardware IO Tools for Xcode)"を検索しダウンロードします。
  4. Finder で、~/Download で DMG ファイルをダブルクリックします。
  5. /Applications フォルダで HomeKit アクセサリシミュレータ(HomeKit Accessory Simulator) をドラッグします。

HomeKit フレームワークの詳細については、HomeKit Framework リファレンス を参照してください。


データ保護を有効にする (iOS、WatchKit 機能拡張、tvOS)


データ保護を使うと、アプリによってディスクに保存されたファイルへのセキュリティのレベルを追加します。データ保護は、特定のデバイス上にある内蔵の暗号化ハードウェアを使用し、ディスク上に暗号化されたフォーマットでファイルを保存します。あなたのアプリは、データ保護を使用するようにプロビジョニングされる必要があります。


データ保護を有効にするには


  1. [機能(Capabilities)] ペインで、データ保護が有効になっていない場合は、[データ保護(Data Protection)] セクション内のスイッチをクリックします。

4_enabledataprotection_2x


保護のデフォルトレベルは、完全な保護 であり、デバイスがロックされたときにはファイルは暗号化され、アクセスできません。プログラムで、あなたのアプリが作成したファイルの保護レベルを設定でき、この事は iOS 用アプリ・プログラミング・ガイドディスク上の暗号化によるデータの保護 で説明しています。


HealthKit の追加 (iOS、WatchKit 機能拡張)


HealthKit は、個人の健康情報を格納および取得する事を、ユーザーの許可を得て、あなたのアプリに許可します。あなたのアプリ ID にこの資格を追加し、プロジェクトに HealthKit のフレームワークを追加するには、HealthKit セクションのスイッチをクリックします。


4_enablehealthkit_2x


無線アクセサリー構成の有効化 (iOS)


無線アクセサリの構成を有効にすると、プロジェクトに外部アクセサリフレームワークを追加し、MFi の Wi-Fi のアクセサリーを構成するよう、あなたのアプリに許可します。無線アクセサリの構成を有効にするには、無線アクセサリーの構成 (Wireless Accessory Configuration) セクションのスイッチをクリックして下さい。Xcode は、あなたの資格ファイルとアプリ ID 両方に資格を追加します。


4_enablewac_2x


外部アクセサリのフレームワークについて詳細は、外部アクセサリプログラミングのトピックス をお読みください。


ニューススタンドの構成 (iOS、WatchKit 拡張機能)


ニューススタンドを使用すると、アプリがユーザーの雑誌や新聞アプリをフォルダーへの予約購入を整理する事を可能にします。ニューススタンドを使用するには、情報プロパティリストにいくつかのキーを追加し、Xcode プロジェクトにアートワークを追加します。ニューススタンド・アプリの作成の詳細については、開発者向けニューススタンド を参照してください。Xcode プロジェクトにニューススタンド・カバーのアイコンを追加する方法については、iOS のヒューマン・インターフェイス・ガイドライン の「ニューススタンド・アイコン」をお読みください。


トラブルシューティング


アプリのサービスを有効にするのに問題がある場合、エラーメッセージが[Steps] の下のプロジェクトエディタの領域に表示されます。エラーメッセージを読んだ後、問題を修復するために[問題を修正(Fix Issue)] をクリックします。あなたが開発証明を持っており iOS、tvOs、watchOS アプリの場合は、Scheme(スキーム) のツールバーメニューから選択されたデバイスでは、Xcode はあなたのチームのプロビジョニングプロファイルを作成します。


4_nodevices_2x


総括


この章では、会員センターと iTunes Connect で、いくつかの場合、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 を検出したというダイアログが表示
    アーカイブと提出の課題
    サポートされている機能
    文書改訂履歴
    用語集














    トップへ














    トップへ














    トップへ














    トップへ














    トップへ














    トップへ














    トップへ














    トップへ














    トップへ














    トップへ














    トップへ














    トップへ














    トップへ














    トップへ














    トップへ














    トップへ














    トップへ














    トップへ














    トップへ














    トップへ














    トップへ














    トップへ














    トップへ














    トップへ














    トップへ














    トップへ














    トップへ














    トップへ














    トップへ














    トップへ














    トップへ














    トップへ














    トップへ














    トップへ














    トップへ














    トップへ














    トップへ














    トップへ














    トップへ














    トップへ














    トップへ














    トップへ














    トップへ














    トップへ














    トップへ














    トップへ














    トップへ














    トップへ














    トップへ














    トップへ














    トップへ














    トップへ














    トップへ














    トップへ














    トップへ














    トップへ














    トップへ














    トップへ














    トップへ














    トップへ














    トップへ














    トップへ














    トップへ














    トップへ














    トップへ














    トップへ














    トップへ














    トップへ














    トップへ














    トップへ














    トップへ














    トップへ














    トップへ














    トップへ














    トップへ














    トップへ














    トップへ