[資格リスト]
[<プロジェクト名> のプロジェクト オプション]ダイアログ ボックス への移動
目次
[プロジェクト|オプション...|資格リスト]
アプリケーションがシステムとどうやり取りするかを資格で記述します。資格はキーと値のペアで、プロパティ リスト ファイルに定義されており、ターゲットに対する特定の機能やセキュリティ権限を付与するものです。たとえば、アプリケーションからカメラ、ネットワーク、ユーザー データ(アドレス帳など)にアクセスする必要があることを示す資格キーがあります。
オプション | 説明 |
---|---|
[ターゲット]、[適用...]、[保存...] |
「[ターゲット]オプション」を参照。 |
共通項目 |
資格リスト
[資格リスト]では、実行時にプログラムがシステム リソースにアクセスできるかどうかを制御します。具体的な資格を設定すると、アプリケーションの実行時にその権限を使用できます。
この[資格リスト]では、現在のプロジェクトの資格オプションを設定します。[ターゲット]コンボ ボックスで、サポートされていないターゲット プラットフォームを選択すると、このリストは空になります。
[資格リスト]オプション | 説明 |
---|---|
左側の列 |
ターゲット プラットフォームの資格を一覧表示します。ほとんどの資格は論理値(True/False)です。 |
右側の列 |
資格の設定を指定します。True と False のどちらかです。 オプションの値を変更するには、以下のいずれかを行います。 |
Android の資格リスト
現在の Android プロジェクトの資格オプションを設定します。[ターゲット]コンボ ボックスで[Android プラットフォーム]を選択してください。
Android アプリケーションで設定可能な資格には、たとえば次のようなものがあります。
- [AdMob サービス]: Android アプリケーション向けに Google 社が提供している広告サービスを有効にします。
- [プッシュ通知の受信]: Android アプリケーションで GCM のサポートを有効にし、リモート サーバーからデータを受信できるようにします。
Mac OS X の資格リスト
現在の Mac OS X プロジェクトの資格オプションを設定します。[ターゲット]コンボ ボックスで[OS X プラットフォーム]を選択してください。
設定可能な資格には、たとえば次のようなものがあります。
- [USB デバイスとのやり取り]
- [読み書きアクセス (アドレス帳)]
- [読み取り専用アクセス (音楽フォルダ)]
- [コンピュータの地理的位置の利用]
メモ: 資格が制限されているのは、Apple のサンドボックスの要件のためです。
- 資格とサンドボックスについて Apple が提供している詳細情報については、以下を参照してください。
- 資格についてのリファレンス(英語版)
- アプリケーション サンドボックスの有効化(英語版。[資格リスト]ページのオプションの説明)
- サンドボックスについて Apple が提供している情報については、「アプリケーション サンドボックスの設計」(英語版)を参照してください。
iOS の資格リスト
RAD Studio では現在の iOS プロジェクトの資格を IDE から設定することはできません。ただし、資格ファイルを手動でカスタマイズすることはできます。
RAD Studio Seattle Subscription Update 1 では、[資格リスト]オプション ページに新しいオプションが追加されて、iOS 9.0 に対して HTTP プロトコルの要求を行えるようになっています。このオプション(デフォルトでオン)を使用すると、iOS の ATS(App Transport Security)セキュリティ機能を無効にすることで以下を実現できます。
- HTTP と HTTPS のどちらのプロトコルを使用しているかに関係なく、接続を行うことができます。
- TLS のバージョンが古いサーバーに接続することができます。
- 前方秘匿性(Forward Secrecy:FS)をサポートしていない暗号スイートを使用することができます。
- メモ: ATS ではすべての HTTP 要求が自動的に HTTPS に変換されます。そのため、ATS が有効なときにセキュアでない接続を行おうとするとエラーになります。詳細は、Apple 社のドキュメントを参照してください。
メモ: 資格が制限されているのは、Apple のサンドボックスの要件のためです。
- 資格とサンドボックスについて Apple が提供している詳細情報については、以下を参照してください。
- 資格についてのリファレンス(英語版)
- アプリケーション サンドボックスの有効化(英語版。[資格リスト]ページのオプションの説明)
- サンドボックスについて Apple が提供している情報については、「アプリケーション サンドボックスの設計」(英語版)を参照してください。
iOS または Mac OS X の資格リストのカスタマイズ
RAD Studio では、プロジェクトごとに資格ファイルを手動で編集することもできますし、すべてのプロジェクトに適用される資格キーをあらかじめ定義しておくこともできます。
iOS ターゲット プラットフォーム、Mac OS X ターゲット プラットフォーム向けのアプリケーションを、初めてビルドする際に、RAD Studio はファイルをプロジェクト フォルダに追加します(ターゲットにより、Entitlement.TemplateiOS.xml
または Entitlement.TemplateOSX32.xml
に)。iOS や Mac OS X 向けのアプリケーションをビルドすると必ず、RAD Studio はこのファイルを読み取り、ファイル内のプレースホルダをプロジェクト オプションの実際の値に置き換え、その結果の内容を出力ファイルに書き込みます(<プロジェクト フォルダ>\<プラットフォーム>\<ビルド構成>\<プロジェクト名>.entitlements
)。この出力ファイルは xml ファイルで、iOS や Mac OS X のアプリケーションの配置時に、RAD Studio が生成するパッケージに含まれています。
プロジェクト オプションとしてビジュアルに定義できないカスタム データを(ターゲットに応じて)Entitlement.TemplateiOS.xml
ファイルまたは Entitlement.TemplateOSX32.xml
ファイルに含める必要がある場合には、そのファイルの内容をカスタマイズすることができます。
1 つのプロジェクト向けに資格リストをカスタマイズするには、プロジェクト フォルダにある xml ファイルの内容を編集します。ファイルの名前はターゲットにより、Entitlement.TemplateiOS.xml
または Entitlement.TemplateOSX32.xml
になります。
すべてのプロジェクトに適用される資格キーをあらかじめ定義しておくこともできます。iOS または Mac OS X ターゲット プラットフォーム向けに初めてプロジェクトをビルドする際、RAD Studio がプロジェクトに追加する xml ファイルは、ターゲットに応じて、C:\Users\<username>\AppData\Roaming\Embarcadero\BDS\17.0\Entitlement.TemplateiOS.xml
または Entitlement.TemplateOSX32.xml
から取得されます。新規プロジェクトに使用する xml ファイルを異なるものにしたい場合には、これらのファイルを編集します。
- 警告: プロジェクト独自の資格ファイルを持たせるには、プロジェクトを固有のフォルダに保存する必要があります。
- メモ: 共通の xml ファイルとプロジェクトの xml ファイルの名前が同じであることに注意してください。すべてのプロジェクトの基となる資格を変更するのか、具体的な 1 つのプロジェクトの資格だけを変更するのかに、気を配る必要があります。
関連項目
- Apple アプリケーションの資格ファイル
- GCM サポート
- AdMob サービスの使用
- iAd サービスの使用
- モバイル チュートリアル:リモート通知を使用する(iOS および Android)
- [プロビジョニング](IDE でアプリケーションを Mac App Store に提出するために必要)
- Mac 用コード署名入門(英語版)
- App Store への Mac アプリケーションの提出(英語版)
- Mac OS X のアプリケーション開発(コード署名と Mac App Store への提出についての解説)
- iOS アプリケーションを App Store への提出用に配置する