ID、デバイス、プロファイルの維持
アプリにコード署名するのに使うプロファイル、ID、デバイスを管理する会員センターを使用して、デバイス上で起動することを可能にし、特定の技術やサービスを使用可能にします。Xcode は開発中に、これらの資産を作成し、管理します。テストのためにアプリを配布する準備ができたら、これらの資産の一部を自分自身で管理するために会員センターを使用します。たとえば、アドホック(臨時の)やストアのプロビジョニングプロファイルを作成するには会員センターを使用します。また、テストに使用されるデバイスのリストを、個別に登録せずにアップロードすることもできます。この章では、ID、デバイス、およびプロファイルを維持するために実行する、色々なタスクをカバーしています。
ウェブサイトでプッシュ ID を使用する方法については、ウェブサイトのための通知のプログラミングガイド を参照してください。
重要: チームエージェントは、この章のすべてのタスクを実行できます。あなたがチームの管理者やチームのメンバーである場合、あなたが実行できるタスクについては、チームの特権 を参照してください。
アプリ ID の登録
1つ以上のアプリや、正確にバンドルIDと一致する明示的アプリ ID と一致するワイルドカード アプリ ID を作成することができます。アプリ ID で有効になった技術は、1つ以上のアプリが使用できる技術のホワイトリストとして機能します。アプリが実際に使用する技術が何か、と言うと Xcode のプロジェクトで設定されています。アプリ ID を作成するときの技術を有効にするか、後でこれらの設定を変更することができます。ゲームセンターやアプリ内購入は、明示的 iOS のアプリ ID でデフォルトで有効になっています。アプリ内購入は、明示的な Mac のアプリ ID のデフォルトで有効になっています。
ほとんどの場合、機能の追加 で説明したように、アプリに機能を追加するときに Xcode が作成した、ワイルドカードや明示的アプリ ID は、開発、テスト、およびアプリを配布するのに十分です。アプリごとに1つだけの明示的アプリ ID があるので、一つがすでに存在する場合、Xcode はチームのプロビジョニングプロファイルを作成するためにそれを使用します。
アプリ ID を登録するには
- 会員センターで、証明書、ID とプロファイルを選びます。
- ID の下で、[アプリ ID] を選択します。
- 右上隅にある[追加] ボタン(+)をクリックします。
- [説明(Description)] フィールドにアプリ ID の名前または説明を入力します。
- 明示的アプリ ID を作成するには、[明示的アプリ ID(Explicit App ID)] を選択し、バンドル ID フィールドに、アプリのバンドル ID を入力します。
- ワイルドカードアプリ ID を作成するには、[ワイルドカードの App ID(Wildcard App ID)] を選択し、バンドル ID フィールドにバンドル ID の接尾語を入力します。
- 使用したいアプリのサービスを有効にするには、該当するチェックボックスを選択します。
- [続行(Continue)] をクリックします。
- 登録情報を確認し、[提出(Submit)] をクリックします。
- [完了(Done)]をクリックします。
明示的アプリ ID はあなたがビルドしているアプリ、例えば、com.example.gitakumar.adventure のバンドル ID と正確に一致します。明示的アプリ ID は、アスタリスク(*)を含めることはできません。
Xcode でターゲットの[総括(Summary)] ペインにバンドル ID を入力した場合は、ここで入力したアプリ ID は、バンドル ID と一致する必要があります。
技術が、明示的なアプリ ID を必要とし、ワイルドカードアプリ ID を作成している、または技術がデフォルトで有効になっている場合は、チェックボックスは無効になっています。
アプリ ID の編集
直接会員センターを使用して、アプリ ID を編集できます。
既存のアプリ ID の技術を有効にするには
- 会員センターで、証明書、ID とプロファイル を選んで下さい。
- ID の下で、アプリ ID を選択して下さい。
- 変更したいアプリ ID を選択し、[編集(Edit)] をクリックします。
- 許可したいアプリサービスを有効にするには、該当するチェックボックスを選択します。
- 警告ダイアログが表示されたら、[OK] をクリックします。
- [完了] をクリックします。
後で、このアプリ ID を使用して、プロビジョニング·プロファイルを再生成します。
会員センターで設定可能と表示される、アプリのサービスを完全に有効にするには、機能の追加 をお読み下さい。
アプリ ID の削除
必要でなくなれば、アプリ ID を削除することもできます。しかし、あなたが iTunes Connect にアップロードしたアプリの明示的なアプリ ID を削除することはできません。
アプリ ID を削除するには
- 会員センターで、証明書、ID とプロファイルを選んで下さい。
- ID の下で、アプリ ID を選択して下さい。
- 削除したいアプリ ID を選択し、[編集(Edit)] をクリックします。
- ページの一番下までスクロールし、[削除(Delete)] をクリックします。
- 表示されたダイアログを読み、[削除] をクリックします。
削除されたアプリ ID を含むプロビジョニングプロファイルは無効になります。会員センターでプロビジョニングプロファイル編集 で説明したように、プロビジョニングプロファイルのアプリ ID を変更したり削除したりできます。
チーム ID を検索する
場合によっては、あなたのチーム ID を知っている必要があります。例えば、他の開発者からアプリの所有権を受け取りたい場合は、その開発者は iTunes Connect でアプリの転送を開始するために、あなたのチーム ID が必要です。チーム ID は、あなたのチームに割り当てられている Apple 社によって生成された唯一の 10 文字の文字列です。会員センターを使用して、チーム ID を見つけることができます。
チーム ID を検索するには
- 会員センターで、[あなたのアカウント(Your Account)] を選択します。
チーム名の下に[開発者アカウントの概要]セクションにチーム ID が表示されます。
会員センターを使用してデバイスを登録する
会員センターでは、必要に応じて個別にデバイスを登録したり、複数のデバイスに関する情報のファイルをアップロードできます。毎年、固定した数のデバイスを登録できます。登録できるデバイスの最大数は、メンバーシップ年あたり、プロダクトファミリーあたり 100 です。後でデバイスを無効にした場合、会員センターを使ってデバイスを無効/有効にする で説明したように、それは登録されたデバイスの数を減少させません。
デバイス ID の検索
登録したい各デバイスの名前とデバイス ID が必要です。Xcode がインストールされているかどうかに応じてデバイス ID を取得する方法には、いくつかあります。
Xcode を使用してデバイス ID を検索
Xcode で、チームメンバーはデバイス ID を表示するには、デバイスウインドウでデバイスを選択できます。
Xcode を使用してデバイス ID を検索するには
- [ウィンドウ(Window)] > [デバイス(Devices)] を選択します。
- iOS と tvOS のアプリの場合は、あなたの Mac にデバイスを接続します。watchOS のアプリの場合は、Apple Watch とペアの iPhone を接続します。
- デバイスの下のデバイスウインドウで、あなたのデバイス (あなたの Mac もデバイスです) を選択します。
デバイス ID が ID フィールドに表示されます。
iTunes を使って iOS のデバイス ID を検索(iOS、tvOS)
iOS デバイスの場合、iTunes を使用してもデバイス ID を取得することができます。たとえば、テスターは、Xcode がインストールされていないとき、iTunes を使用して、次の手順でデバイス ID を取得できます。
iTunes を使ってデバイス ID を取得するには
- あなたの Mac 上の iTunes を起動します。
- あなたの Mac にデバイスを接続します。
- 右上隅で、デバイスを選択します。
- [総括(Summary)] ペインで、シリアル番号のラベルをクリックします。(iOS では、それは容量や電話番号の下に表示されます)
- ID を Control - クリックしてデバイス ID をコピーし、ショートカットメニューから[コピー(Copy)] を選択します。
- 文書または電子メールメッセージ内にデバイス ID をペーストします。
ラベルのシリアル番号が UDID に変わり、デバイス ID が表示されます。
システム情報を使用してデバイス ID 検索(iOS,tvOS,Mac)
Mac アプリでは、システム情報アプリを使用してデバイス ID を取得することができます。例えば、開発に使用されていないテスト用の Mac を登録したい場合は、この方法を使用します。
システム情報を使用して Mac のデバイス ID を検索するには
- /Applications/Utilities フォルダにあるシステム情報アプリを開いて下さい。
- 左の列で[ハードウェア]を選択します。
デバイス ID、またはハードウェア UUID は、[ハードウェアの概要]ペインの下部に表示され、XXXXXXXX-XXXX-XXXX-XXXX-XXXXXXXXXXXX のフォーマットです。
Xcode を使用せずに iOS や、Apple TV のデバイス ID を収集する場合も、この方法を使用して下さい。
システム情報を使用して接続されたデバイス ID を検索するには
- あなたの Mac にデバイスを接続します。
- /Applications/Utilities フォルダにあるシステム情報アプリを開きます。
- 左側の列にあるハードウェアの下にある USB を選択します。
- 右側で、USB デバイスツリーの下に接続されたデバイスを選択します。
デバイスID、または"シリアル番号"は、下に表示されます。
個々のデバイスを登録
会員センターを使用してデバイスを登録するには、デバイス名とデバイス ID を持っている必要があります。
単一のデバイスを登録するには
- 証明書、ID とプロファイルで、[デバイス]を選択して下さい。
- [デバイス(Devices)] の下で、[すべて(All)] を選択します。
- 右上隅にある[追加] ボタン(+)をクリックします。
- [デバイス登録(Register Device)] を選択します。
- デバイス名とデバイス ID (UDID) を入力します。
- ページの一番下までスクロールして、[続行(Continue)] をクリックします。
- 登録情報を確認し、[登録(Register)] をクリックします。
複数のデバイスを登録
多くのテスト用デバイスを使用している場合は、デバイス名とデバイス ID を含むファイルを作成し、会員センターにファイル全体をアップロードできます。会員センターは、これらの2つのファイル形式をサポートしています。.deviceids ファイル拡張子を持つプロパティリストファイルと、プレーンテキストファイルです。どちらのファイル形式を選択するかは、登録したいデバイスへのアクセス権を持っているかどうかによって異なります。
Apple コンフィギュレータを使用してプロパティリストのデバイスファイルを作成
テスト用デバイスへのアクセスを持っている場合は、すべてのデバイス名とデバイス ID を含むプロパティリストファイルを作成するために、Apple コンフィギュレータを使用できます。Mac App Store から Apple コンフィギュレータをダウンロードしてください。
プロパティリストのデバイスファイルを作成するには
- Apple コンフィギュレータで、[アクション(Action)] > [エクスポート(Export)] > [情報(Info)] を選択します。
- "デバイス ID のリスト、開発者向けポータル(List of Device for Developer Portal)" を選択し、[エクスポート(Export)] をクリックします。
- ファイル名と場所を選択し、[保存(Save)] をクリックします。
ファイルには .deviceids 拡張子が付いています。
プレインテキストのデバイスファイルの作成
テスト用デバイスへのアクセス権を持っていない場合、別の方法を使用して収集したデバイス名とデバイス ID を含む、.txt ファイルを作成できます。この場合、一つのデバイス ID と一つのデバイス名を各行に書いた、タブ区切りのファイルを作成します。解析されたとき、その行は無視されているため、最初の行をヘッダーとして使用できます。
デバイスファイルのアップロード
会員センター で、デバイスファイルをアップロードする手順は、両方のファイル形式とも同じです。
複数のデバイスを登録するには
- 証明書、ID とプロファイルで、[デバイス(Devices)] を選択します。
- [デバイス]の下で、[すべて]を選択します。
- 右上隅にある[追加] ボタン (+) をクリックします。
- [複数のデバイスを登録(Register Multiple Devices)] を選択します。
- [ファイルの選択(Choose File)] をクリックします。
- アップロードしたいファイルを選び、[選択(Choose)] をクリックします。
- [続行(Continue)] をクリックします。
- 登録情報を確認し、[Submit(提出)]をクリックします。
以前に作成した .deviceids または .txt ファイルのいずれかを選択します。
あなたの iOS または Apple TV デバイスにプレリリースのインストール
作業を開始する前に、 Apple デベロッパ からあなたのデバイスにインストールしたいプレリリースをダウンロードしてください。
あなたの開発用デバイスにプレリリースをインストールするには
- あなたの Mac にデバイスを接続します。
- iTunes で、左上隅にあるデバイスを選択します。
- [総括(Summary)] ペインで、iPhone/iPad/iPod を復元または Apple TV の復元ボタンを Option - クリックします。
- プレリリースソフトウェアが復元するイメージを選択し、インストールを開始するため[開く(Open)] をクリックします。
- インストールが完了したら、デバイスをアクティベートし、iTunes を使ってその内容を復元します。
Apple TV のデバイスの場合は、デバイスが iTunes で表示されない場合、リカバリモードにします。
会員センターを使ってデバイスを無効/有効にする
あなたはデバイスを無効/有効にできますが、会員センターからそれを削除することはできません。開発やテストのために、もはや使用しないデバイスを無効にできます。しかし、そうすることは、デバイスを含む、プロビジョニングプロファイルを無効化しますが、年間のデバイスの合計数を増加させません。また、以前に無効にしたデバイスを有効にできます。
デバイスを無効/有効にするには
- 証明書、ID とプロファイルで、[デバイス]を選択します。
- [デバイス(Devices)] の下で、[すべて(All)] を選択します。
- 無効/有効にしたいデバイスを選択します。
- [無効(Disable)/有効(Enable)] をクリックします。
- 表示されるダイアログで、再び無効/有効をクリックします。
デバイスを無効にした後、無効なチームのプロビジョニングプロファイルを再生成するには、Xcode でプロビジョニングプロファイル更新 を読んで下さい。あなたが管理しているる他のプロビジョニングプロファイルから、無効になったデバイスを削除するには、会員センターでプロビジョニングプロファイル編集 を読んで下さい。
また、Xcode を使用してデバイスを有効にすることもできます。iOS アプリの場合、Xcode は、プロジェクトエディタでスキームツールバーから選ばれた、接続されたデバイスを自動的に登録します。Mac アプリの場合、Xcode は自動的に、Xcode を実行している Mac を登録します。デバイスまたは Mac が以前に登録されているが、無効になっている場合、Xcode はそれを有効にします。
デバイスにインストールされているのがプロビジョニングプロファイルの古いバージョンである場合、無効なデバイス上でアプリを実行することがまだできます。プロビジョニングプロファイルの古いバージョンを削除するには、デバイス上のプロビジョニングプロファイルの確認と削除 を読んで下さい。
デバイス上のアプリの管理
デバイスウィンドウでは、iOS または tvOS デバイスにインストールされているアプリのインスタンスを管理できます。始める前に、あなたの Mac にデバイスを接続し、[ウィンドウ(Window)] > [デバイス(Devices)] を選択して、[デバイス(Devices)] の下でデバイスを選択します。iOS と tvOS のアプリの場合は、あなたの Mac にデバイスを接続します。watchOS アプリの場合は、Apple Watch とペアの iPhone を接続してください。
デバイスからアプリの削除
デバイス上のアプリに関連付けられているすべてのデータファイルを削除するには、デバイスからアプリを削除します。アプリを最初に起動した時のみ実行するコードをテストするために行う可能性があります。Xcode で、あなたが作成したアプリのみを削除できます。Xcode を使用してデバイスからシステムによりインストールされた、またはサードパーティのアプリのいずれかを削除することはできません。
デバイスからアプリを削除するには
- インストールされたアプリのテーブルで、アプリを選択してテーブルの下で[削除(Delete)] ボタン (-) をクリックします。
- 表示されるダイアログで、[削除(Delete)] ボタンをクリックします。
デバイス上のアプリコンテナを表示、ダウンロード、交換
デバイス上のアプリコンテナのファイル構造を Xcode で直接に表示できますが、ファイルの内容を表示することはできません。
アプリコンテナの内容を表示するには
- インストールされたアプリの下で、リストからアプリを選択します。
- [アクション(Action)] メニュー ([削除(delete)] ボタンの右側にある歯車のアイコン) から、[コンテナ表示(Show Container)] を選択します。
- [完了(Done)] をクリックします。
アプリコンテナ内のファイルを調べ、変更し、あなたのファイルシステムにダウンロードしてください。アプリコンテナの内容を解析することで、問題やアプリのチューニングを診断するのに役立つ重要な情報を提供することができます。
アプリコンテナの内容をダウンロードするには
- インストールされたアプリの下で、リストからアプリを選択します。
- アクションポップアップメニューから[コンテナのダウンロード(Download Container)] を選択します。
- [名前を付けて保存(Save As)] テキストフィールドにファイル名を入力し、[保存(Save)] をクリックします。
特定の状態でアプリをテストするには、デバイス上のアプリコンテナを交換してください。
デバイス上のアプリコンテナを交換するには
- インストールされたアプリの下で、リストからアプリを選択します。
- [アクション(Action)] メニューから、[コンテナを交換(Replace Container)] を選択します。
- ファイルピッカーからコンテナを選択し、[開く(Open)] をクリックします。
会員センターを使用してプロビジョニングプロファイルの作成
会員センターを使用して自分自身で、開発と配布プロビジョニングプロファイルの両方を作成できます。
Xcode は、あなたのためにチームのプロビジョニング・プロファイルを作成し、管理するので、特定のチームメンバーとデバイスにアプリの開発を制限したい場合は、開発用プロビジョニングプロファイルだけを作成します。あなたが独自の開発用プロビジョニングプロファイルを作成したい場合は、開発用プロビジョニング・プロファイルの作成 の手順に従って下さい。
アプリアーカイブをエクスポートし、アドホック展開オプションを選択すると、ストア外でのテスト用にアプリをエクスポート で説明したように Xcode が、あなたのため iOS アドホックプロビジョニングプロファイルを作成します。会員センターで直接アドホックプロビジョニングプロファイルを作成するには、アドホック・プロビジョニング・プロファイルの作成(iOS、tvOS、watchOS) をお読みください。
同様に、Xcode はあなたがストアにアプリを提出するときのストア・プロビジョニング・プロファイルを作成します。会員センターで直接ストア・プロビジョニング・プロファイルを作成するには、ストアのプロビジョニングプロファイルの作成 をお読みください。
プロビジョニン・グプロファイルを作成した後、Xcode でプロビジョニングプロファイルのダウンロード に記載されているように、Xcode でプロビジョニング・プロファイルをダウンロードします。プロビジョニング・プロファイルは、アカウントの設定内のビューの詳細ダイアログ内のプロビジョニング・プロファイルの表に表示されます。
開発用プロビジョニング・プロファイルの作成
開発用プロビジョニング・プロファイルを作成する前に、アプリ ID、1つ以上の開発用証明書、および1つ以上のデバイスを持っていることを確認してください。あなた自身のアプリ ID を登録したい場合は、アプリ ID の登録 をお読みください。(また、Xcode があなたのために管理するアプリ ID のいずれかを使用できます)。あなたの開発用証明書を作成する必要がある場合は、署名 ID の作成 を読んで下さい。デバイスを登録する必要がある場合は、会員センターを使用してデバイスを登録する をお読みください。
開発用プロビジョニングプロファイルを作成するには
- 証明書、ID とプロファイル で、[プロビジョニングプロファイル] の下で[全て(All)] を選択します。
- 右上隅にある[追加]ボタン(+) をクリックします。
- [開発(Development)] の下で、あなたが作成したい、プロビジョニング・プロファイルの型を選択し、[続行(Continue)] をクリックします。
- iOS と watchOS のアプリの場合は、iOS アプリの開発を選択します。
- tvOS アプリの場合は、tvOS アプリの開発を選択します。
- Mac アプリの場合は、Mac アプリの開発を選択します。
- 開発に使用したいアプリ ID を選択し、[続行(Continue)] をクリックします。
- 1つ以上の開発証明書を選択し、[続行] をクリックします。
- 1つ以上のデバイスを選択し、[続行] をクリックします。
- プロファイル名を入力して、[Generate(生成)] をクリックします。
- [完了(Done)] をクリックします。
アドホック・プロビジョニング・プロファイルの作成(iOS、tvOS、watchOS)
アドホック・プロビジョニング・プロファイルは、テスターが Xcode を必要とせず、彼らのデバイス上であなたのアプリを実行できます。アドホック・プロビジョニング・プロファイルを作成するにはアプリ ID、単一の配布証明書、および複数のテストデバイスを選択します。
重要: 配布証明書を持っていない場合は、続ける前に、署名 ID の作成 で説明したように、Xcode を使用してそれを作成します。
アドホック・プロビジョニング・プロファイルを作成するには
- 証明書、ID とプロファイル で、プロビジョニング・プロファイルを選択します。
- 右上隅にある[追加] ボタン(+) をクリックします。
- アドホックまたは tvOS アドホックを配布方法として選択し、[続行(Continue)] をクリックします。
- アプリ ID ポップアップメニューから、あなたのバンドル ID と一致する、開発に使用するアプリ ID を選択して、[続行(Continue)] をクリックします。
- 使用したい配布証明書を選択し、[続行] をクリックします。
- テストのために使用したいデバイスを選択し、[続行] をクリックします。
- プロファイル名を入力し、[生成(Generate)] をクリックします。
- ページの一番下で、[完了(Done)] をクリックします。
開発中にチーム・プロビジョニング・プロファイルを使用し、メニューが Xcode の iOS ワイルドカード・アプリ ID のみを含んでいる場合は、それを選択してください。メニューが、別の Xcode が管理する明示的なアプリ ID を含んでいる場合は、そのアプリ ID を選択します (それは "Xcode" で始まり、あなたのバンドル ID を含みます)。あなた自身のアプリ ID を作成した場合は、そのいずれか1つを選択します。
会員センターが、プロビジョニング・プロファイルを生成するのを待ちます。
Xcode でプロビジョニングプロファイルのダウンロード で説明したように、Xcode で、アドホック・プロビジョニング・プロファイルをダウンロードしてください。アカウントの設定内のビューの詳細ダイアログで、アドホック・プロビジョニング・プロファイルは今や、プロビジョニングプロファイルの表に表示されています。
ストアのプロビジョニングプロファイルの作成
ストアにアプリをアップロードする前に、それがストアのプロビジョニングプロファイルを使用している事を確認して下さい。(全てのアプリサービスを有効にしない Mac アプリの場合は、配布証明書を使用するだけでアプリにコード署名できます。) ストアのプロビジョニングプロファイルを作成するためには、何もデバイスを選択しないでください。
ストアのプロビジョニング・プロファイルを作成するには
- 証明書、IDとプロファイル で、プロビジョニングプロファイルを選択します。
- 右上隅にある[追加] ボタン(+) をクリックします。
- 配布方法を選択し、[続行(Continue)] をクリックします。
- iOS と watchOS のアプリの場合は、App Store を選択して下さい。
- tvOS アプリの場合は、tvOS App Store を選択します。
- Mac アプリの場合は、Mac App Store を選択します。
- アプリ ID ポップアップメニューから、開発用に使用されるアプリ ID(あなたのバンドル ID と一致するアプリ ID) を選択し、[続行(Continue)] をクリックします。
- 配布証明書を選択し、[続行] をクリックします。
- プロファイル名を入力し、[生成(Generate)] をクリックします。
- ページの一番下で、[完了(Done)] をクリックします。
開発中にチーム・プロビジョニング・プロファイルを使用して、メニューが Xcode のワイルドカードアプリ ID のみを含んでいる場合は、それを選択します。メニューが Xcode に管理された明示的なアプリ ID を含んでいる場合は、(それは "Xcode" で始まり、あなたのバンドル ID を含んでいます) アプリ ID を選択します。あなた自身のアプリ IDを作成した場合は、そのいずれか1つを選択します。
ストア・プロビジョニング・プロファイルは、単一の配布証明書を含んでいます。
会員センターが、プロビジョニングプロファイルを生成するのを待ちます。
Xcode でプロビジョニングプロファイルのダウンロード
会員センターで行った変更は自動的には Xcode に反映されません。例えば、会員センターでプロビジョニングプロファイルを作成または編集した場合は、それらの変更内容を取得するために Xcode でプロビジョニングプロファイルをダウンロードします。開発用証明書を取り消すと、Xcode が管理している、チームのプロビジョニングプロファイルを再生成してプロビジョニングプロファイルを更新して下さい。
Xcode でプロビジョニングプロファイルを更新するには
- Xcode の Preferences(環境設定) ウィンドウで、[アカウント(Accounts)] をクリックします。
- あなたのチームを選択し、[詳細の表示(View Details)] をクリックします。
- 表示されるダイアログで、[プロビジョニングプロファイル] の表の下の左下隅にある[ダウンロード(Download)] ボタンをクリックします。
Xcode はプロビジョニングプロファイルの表のプロファイルのリストを更新します。
カスタム・プロビジョニング・プロファイルの使用
時々、Xcode が管理するチーム・プロビジョニング・プロファイルの代わりに、独自のカスタム開発プロビジョニング・プロファイルを使用したいでしょう。例えば、アプリの開発を開発者のサブセットに制限したり、別のアプリの構成をテストしている場合は、これを行う事ができます。その場合、会員センターを使用してプロビジョニングプロファイルの作成 で説明したように、開発用プロビジョニング・プロファイルを作成し、新しいプロファイルを使用するように、あなたのコード署名 ID のビルド設定を設定します。
アプリをビルドすると、あなたが使用したいプロビジョニング・プロファイルに含まれている証明書と一致する署名 ID でそれにコード署名します。コード署名 ID ビルド設定ポップアップメニューの可能な値は次のとおりです:
- コード署名しない。 アプリに署名しません。このオプションを選択すると、サンドボックスを含む資格を無効にします。
- 自動プロファイル選択。 あなたの開発者または配布証明書の名前と一致する ID を選択します。
- プロビジョニングプロファイルのない ID。 プロビジョニング・プロファイルに含まれていないコード署名 ID を選択します。
- その他。 特定のコード署名 ID を選択します。デフォルトのキーチェーン内のコード署名 ID が名前で一覧表示されます。期限切れまたはそうでなければ、無効な ID は薄暗く表示され、選択できません。
メニュー項目が各プロビジョニング・プロファイルのコード署名 ID ビルド設定ポップアップメニューで表示され、あなたの開発用証明書が属しています。デフォルト設定では、あなたの開発用証明書と一致する自動プロファイル選択メニュー項目に表示されたプラットフォーム固有の開発用証明書です。このメニューに表示されることがある、証明書の各タイプの説明については、表 14-2 を参照してください。
始める前に、プロジェクトまたはターゲットレベルでのコード署名 ID のビルド設定を設定するかどうかを決定して下さい。単一のターゲットの場合は、一貫している限り、プロジェクトまたはターゲットレベルのいずれかで、このビルド設定を設定できます。同じコード署名 ID を使用している複数のターゲットの場合は、プロジェクトレベルで、このビルド設定を設定します。別のコード署名 ID を使用する複数のターゲットの場合は、各個別のターゲットのこのビルド設定を使います。例えば、プロジェクトレベルを選択すると、プロジェクト内の全てのヘルパーアプリは、メインアプリと同様にコード署名される事を保証されます。
あなたの開発用プロファイルとあなたの開発用証明書へのコード署名 ID ビルド設定にプロビジョニングプロファイルのビルド設定をします。
あなたの開発用証明書にコード署名 ID を設定するには
- Xcode のプロジェクトエディタで、ターゲットを選択します。
- [ビルド設定(Build Settings)] をクリックします。
- [ビルド設定] ペインで、[All(全て)] をクリックし、検索フィールドに code signing と入力します。
- プロビジョニング・プロファイル・ポップアップメニューから、開発用プロビジョニング・プロファイルを選択します。
- 必要に応じて、コード署名 ID ポップアップメニューから、あなたの開発用証明書を選択します。
重要: 同じコード署名 ID を持つ複数のターゲットに署名したい場合は、ターゲットではなく、プロジェクトを選択します。
Xcode は iOS アプリ用に"iOS 開発者" へのコード署名 ID ビルド設定と、Mac アプリ用に"Mac 開発者" に自動的に設定します。
iOS アプリの場合は、"iPhone Developer:" のテキストで始まり、その後あなたの名前が続くプロビジョニング・プロファイルメニュー項目で証明書を選択します。Macのアプリの場合は、"Mac Developer:" テキストで始まり、その後あなたの名前が続くプロビジョニング・プロファイルメニュー項目で証明書を選択します。
あなたのアプリは、それをビルドする次の回はコード署名されています。単に[実行(Run)] ボタンをクリックするだけで、あなたの Mac のアプリをビルドし、実行することができます。iOS アプリの場合は、あなたのアプリに署名し、デバイス上でそれを起動するには、デバイス上でアプリの起動(iOS、tvOS、watchOS) の手順に従ってください。
後で再度チーム・プロビジョニング・プロファイルを使用するには、プロビジョニング・プロファイルのビルド設定を[なし(None)] に変更します。Apple のコード署名技術の詳細については、コード署名ガイド をお読み下さい。
トラブルシューティング
開発プロビジョニング・プロファイルが、プロビジョニング・プロファイル・ポップアップメニューに表示されない場合は、Xcode でプロビジョニングプロファイルのダウンロード に記載したように、プロビジョニング・プロファイルをダウンロードします。その後、再びプロビジョニング・プロファイルのビルド設定を設定してみてください。
アプリをビルドするときにコード署名エラーが発生した場合、コード署名 ID ビルド設定は正しいことを確認して下さい。また、コード署名 ID ビルド設定が、プロジェクトやターゲットレベル(ターゲット設定はプロジェクト設定をオーバーライドします) に設定されているかを確認してください。コード署名 ID のビルド設定のトラブルシューティングを行うには、ビルドとコード署名の問題 をお読み下さい。
Xcode 管理のプロビジョニング・プロファイルへの移行
Xcode はコード署名 ID と、プロビジョニング・プロファイルの作成と更新をします。しかし、あなたのプロジェクトが、Xcode 4 以前を使用して作成された場合、この機能を使用するにはプロビジョニング・プロファイルのビルド設定を[自動(Automatic)] に設定する必要があります。
Xcode 管理のプロビジョニング・プロファイルを使用するには
- Xcode プロジェクトエディタで、ターゲットを選択します。
- [ビルド設定(Build Settings)] をクリックします。
- [ビルド設定] ペインで、[すべて(All)] をクリックし、検索フィールドに Code Signing と入力します。
- プロビジョニング・プロファイル・ポップアップメニューから、[自動(Automatic)] を選択します。
Xcode は最高のコード署名 ID ビルド設定を、[コード署名しない] に設定し、"全ての... SDK" コード署名 ID ビルド設定を iOS 開発者用 (iOS アプリ用) および Mac 開発者用 (Mac アプリのため) に設定します。
必要に応じて、プロジェクトレベル・プロビジョニング・プロファイルのビルド設定を自動にします。プロビジョニング・プロファイルのトラブルシューティングに関しては、プロビジョニングの問題 をお読みください。
会員センターでプロビジョニングプロファイル編集
編プロビジョニングプロファイルを集するために、再生成する必要はありません。プロビジョニングプロファイルの型に応じて、プロビジョニング·プロファイルの名前およびその他のプロパティを変更できます。プロビジョニング·プロファイルのすべての型で、アプリ ID を変更できます。iOS,tvOS,watchOS アプリの場合は、アドホック (臨時の) プロビジョニング・プロファイルにデバイスを追加できます。プロビジョニング·プロファイルを変更する場合は、デバイスにインストールしたプロビジョニング・プロファイルのインスタンスを置換することを忘れないでください。
証明書を再作成したため、プロビジョニング・プロファイルを修復したい場合は 証明書を再作成し関連するプロビジョニングプロファイルの更新 をお読み下さい。
注意:Xcode が管理しているチームのプロビジョニング・プロファイルは変更できません。
プロビジョニングプロファイルを編集するには
- 証明書、ID とプロファイルで、[プロビジョニング・プロファイル] を選択します。
- プロビジョニングプロファイルの下で、[すべて(All)] を選択します。
- 変更したいプロビジョニングプロファイルを選択し、[編集(Edit)] をクリックします。
- その名前の変更、証明書の追加、またはデバイスの異なるセットを選択して、プロビジョニング・プロファイルへの変更を行って下さい。
- [Generate(生成)] をクリックします。
プロファイルが生成されたら、Xcode でプロビジョニングプロファイルのダウンロード で説明したように、Xcode でプロビジョニング·プロファイルをダウンロードします。
期限切れのプロビジョニングプロファイルの更新
プロビジョニングプロファイルの有効期限が切れた場合、プロビジョニングプロファイルのステータスは会員センターで、失効したと表示されます。「会員センターでプロビジョニング・プロファイル編集」 で説明したように、期限切れのプロビジョニング・プロファイルを編集し、再生成して入れ替えます。プロビジョニング・プロファイルを変更する必要はありません。ただ"iOS プロビジョニングプロファイルの編集" または"Mac プロビジョニングプロファイルの編集" ページの一番下までスクロールし、[Generate(生成)] をクリックして下さい。
期限切れのプロビジョニング・プロファイルがデバイスにインストールされている場合は、デバイス上のプロビジョニングプロファイルの確認と削除 に記載されているように、削除して下さい。プロビジョニング・プロファイルがアドホック (臨時の) プロビジョニング・プロファイルの場合は再署名して、再生成したプロビジョニング・プロファイルを使用して、テストの為アプリをエクスポート(iOS、tvOS、watchOS) の説明に従って、アプリを配布して下さい。
デバイス上のプロビジョニングプロファイルの確認と削除
Xcode を使用して、プロビジョニング・プロファイルがデバイスにインストールされているかを確認し、またはデバイスから期限切れのプロビジョニング・プロファイルを削除してください。
注意: デバイス上でアプリを起動すると、iOS と OS X はデバイス上のアプリのバンドルに、埋め込まれたプロビジョニング・プロファイルを自動的にインストールしするので、めったにプロビジョニング・プロファイルを自分自身でインストールすることはありません。
プロビジョニング・プロファイルを確認し削除するには
- iOS と tvOS のアプリの場合は、あなたの Mac にデバイスを接続します。watchOS アプリの場合は、Apple Watch とペアの iPhone を接続してください。
- [ウィンドウ(Window)] > [デバイス(Devices)] を選択し、[デバイス] の下でデバイスを選択します。
- 左の列の一番下で、[アクション(Action)] ボタン([追加] ボタンの右側にある歯車のアイコン) をクリックします。
- ポップアップメニューから[プロビジョニングプロファイルの表示(Show Provisioning Profiles)] を選択してください。
- プロビジョニング・プロファイルを削除するには、リストからそれを選択して左下隅の[削除(Delete)] ボタン (-) をクリックします。
- [完了(Done)] をクリックします。
プロビジョニング・プロファイル・シートが表示されます。
会員センターからプロビジョニングプロファイルを削除
場合によっては、チームからプロビジョニングプロファイルを削除する必要があります。
チームからプロビジョニングプロファイルを削除するには
- 証明書、ID とプロファイルで、[プロビジョニングプロファイル] を選択します。
- [プロビジョニングプロファイル] の下で、[すべて] を選択します。
- 削除したいプロビジョニングプロファイルを選択します。
- [削除]をクリックします。
- 表示されるダイアログで、[削除(Delete)] をクリックします。
そうした後、Xcode でプロビジョニングプロファイルのダウンロード で説明したように、プロビジョニングプロファイルをダウンロードし、デバイス上のプロビジョニングプロファイルの確認と削除 で説明したように、あなたのデバイスからプロビジョニングプロファイルを削除します。
会員センターからプロビジョニングプロファイルをダウンロード
必要に応じて、会員センターから直接、特定のプロビジョニングプロファイルをダウンロードすることができます。
プロビジョニングプロファイルをダウンロードするには
- 証明書、ID とプロファイルで、プロビジョニングプロファイルを選択します。
- [プロビジョニングプロファイル] の下で、[すべて(All)] を選択します。
- プロビジョニングプロファイルを選択します。
- [ダウンロード(Download)] をクリックします。
プロビジョニングプロファイルの名前と、.mobileprovision の拡張子を持つファイルが、ダウンロードフォルダに表示されます。
アプリのバイナリ資格の確認
いくつかの資格 (例えば、アプリサンドボックスの資格) は Xcode プロジェクトに設定され、他は、プロビジョニング・プロファイルに設定されます。アプリの署名を調べることによって、署名されたアプリが正しい資格を持っているかどうかをチェックすることができ、矛盾が発生した場合、アプリのバイナリに埋め込まれたプロビジョニング・プロファイルを調べることによってチェックできます。
署名したアプリの資格を確認するには
- Xcode で、プロジェクトナビゲータ内のプロジェクトを選択します。
- プロジェクトの隣にある開閉用三角ボタンをクリックして、その内容を明らかにします。
- [プロダクト(Product)] の隣にある、開閉用三角ボタンをクリックして、バイナリを明らかにします。
- アプリのバイナリファイルを Control-クリックし、ショートカットメニューから"Finderで表示" を選択して Finder の Xcode のビルド場所に移動します。
- (~/Applications/Utilities にある) Terminal を起動して、次のテキストを入力し、続けてスペース(Return キーを押さないでください) を押します。
- Finder で、のアプリのバイナリを Terminal にドラッグします。
- Return キーを押します。
codesign -d --entitlements -
例えば、iCloud のキー値の保存のために有効になっている iOS アプリの出力は com.apple.developer.ubiquity-kvstore-identifier 資格キーを含んでいます。アプリサンドボックスが有効になっている Mac のアプリの出力は com.apple.security.app-sandbox の資格キーを含んでいます。
<?xml version="1.0" encoding="UTF-8"?> <!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/ PropertyList-1.0.dtd"> <plist version="1.0"> <dict> <key>application-identifier</key> <string>G9B5P7QDV2.edu.self.HelloWorld</string> <key>com.apple.developer.pass-type-identifiers</key> <array> <string>G9B5P7QDV2.*</string> </array> <key>com.apple.developer.ubiquity-container-identifiers</key> <array> <string>G9B5P7QDV2.edu.self.HelloWorld</string> </array> <key>com.apple.developer.ubiquity-kvstore-identifier</key> <string>G9B5P7QDV2.edu.self.HelloWorld</string> <key>get-task-allow</key> <true/> </dict> </plist>
アプリの資格があなたが構成したものと異なっている場合は、埋め込まれたプロビジョニング・プロファイルが正しいことを確認します。まず、埋め込まれたプロビジョニング・プロファイルを検索する必要があります。
アプリのバイナリに埋め込まれたプロビジョニングプロファイルを検索するには
- Xcode で、プロジェクトナビゲータでプロジェクトを選択します。
- プロジェクトの隣にある開閉用三角ボタンをクリックし、内容を表示します。
- プロダクトの隣の開閉用三角ボタンをクリックし、アプリのバイナリを明らかにします。
- アプリのバイナリを Control- クリックし、ショートカットメニューで "Finder で表示" を選択し、Finder で Xcode のビルド場所に移動します。
- Finder で、アプリのバイナリファイルを Control - クリックし、ショートカットメニューから[パッケージの内容を表示(Show Package Contents)] を選択します。
- (~/Applications/Utilities にある) Terminal を起動し、以下のテキストを入力します。(Return キーを押さないでください)
- Finder で、アプリバイナリ内のプロビジョニング・プロファイルを Terminal にドラッグします。
- Return キーを押します。
- 出力の中で Entitlement のキーの位置を確認し、application-identifier キーが正しい資格を持っていることを確認してください。
iOS アプリの場合は、embedded.mobileprovision と呼ばれるプロビジョニング・プロファイルが、Finder ウィンドウに表示されます。Mac アプリの場合は、埋め込まれたファイルは embedded.provisionprofile と呼ばれます。
埋め込まれたプロビジョニングプロファイルの資格を確認するには
security cms -D -i
このコマンドは、XML 形式でプロパティリストを出力します。
たとえば、以下のリストは、データ保護、ワレット、そして iCloud で有効になっている iOS アプリを表示します。iCloud の資格は、テキスト com.apple.developer.ubiquity で始まります。
<key>Entitlements</key> <dict> <key>application-identifier</key> <string>G9B5P7QDV2.*</string> <key>com.apple.developer.default-data-protection</key> <string>NSFileProtectionComplete</string> <key>com.apple.developer.pass-type-identifiers</key> <array> <string>G9B5P7QDV2.*</string> </array> <key>com.apple.developer.ubiquity-container-identifiers</key> <array> <string>G9B5P7QDV2.*</string> </array> <key>com.apple.developer.ubiquity-kvstore-identifier</key> <string>G9B5P7QDV2.*</string> <key>get-task-allow</key> <true/> <key>inter-app-audio</key> <true/> <key>keychain-access-groups</key> <array> <string>G9B5P7QDV2.*</string> </array> </dict>
これらのコマンドを使用する方法は他にも色々あり、codesign と security を参照してください。
総括
この章では、有効な状態で証明書とプロビジョニングプロファイルを維持し、不要になった資産を削除する方法を学びました。特定の証明書とプロビジョニングプロファイルの問題を解決するには、トラブルシューティングを読んで下さい。
前の章
次の章