Xamarin.iOS でのプロパティ リストの操作

このドキュメントでは、Info.plist と Entitlements.plist を操作するための Visual Studio for Mac のグラフィカルおよび高度なプロパティ リスト (.plist) エディターについて説明します。 Visual Studio for Mac 内から iOS アプリケーションのアイコンを設定し、イメージを起動する方法を示します。

Visual Studio for Mac には、アプリのプロパティと機能の編集を容易にするグラフィカルな .plist エディターが用意されています。 Visual Studio for Mac には、アプリのプロパティとアイコンを編集するための Info.plist と、アプリの機能を管理するための Entitlements.plist の 2 つの .plists があります。 このガイドでは、Info.plists について説明し、Visual Studio for Mac での操作の概要についても説明します。 Entitlements.plist の詳細については、「Working with Entitlements (権利の使用)」に関するガイドを参照してください。

Info.plist

情報プロパティの一覧 ( Info.plist) は、アプリケーションの構成に関する情報をシステムに提供する必須の iOS ファイルです。 Visual Studio for Mac のカスタム Info.plist エディターには、エディター ウィンドウの左下にあるタブで制御される次の 3 つのパネルがあります。

The Info.plist editor tabs at the bottom left of the editor window

各パネルは、次に示すように、さまざまなプロパティを制御します。

  • アプリケーション パネル - 一般的なアプリケーション プロパティとアイコンを設定し、イメージを起動するためのグラフィカル インターフェイスで、マップの統合モードとバックグラウンド モードを指定します。
  • 詳細パネル - 詳細パネルは、サポートされているドキュメントの種類、UTI、URL の種類を指定する場所です。
  • ソース パネル - ソース パネルは、アプリケーションのカスタム プロパティだけでなく、あまり一般的でないプロパティも制御します。

次の 3 つのセクションでは、各パネルの機能について詳しく説明します。

アプリケーション パネル

Visual Studio for Mac には、アプリケーションの一般的な Info.plist エントリを編集するためのグラフィカル インターフェイスが用意されています。

  1. Application properties
  2. サポートされているデバイスの種類
  3. 各種デバイスの向きをサポートする
  4. ステータス バーのスタイルと色
  5. アイコンと起動画面
  6. マップ モードとバックグラウンド モード

これらについては、次のセクションで詳しく説明します。

iOS アプリケーション ターゲット

このセクションには、アプリケーションに関する重要な情報が含まれています。 ここに格納されている識別子は、iTunes Connect (App Store アプリの場合) および iOS プロビジョニング ポータル アプリ ID の一覧と開発証明書および配布証明書に入力されたバンドル識別子と一致する必要があります。

iOS Application Target

デバイスのデプロイ

Device Deployment

デバイスの [デプロイ] 情報セクションは、上記の [アプリケーション ターゲット] セクションの [デバイス] ドロップダウンの選択に応じて、選択的に表示されます。 [メイン インターフェイス] ドロップダウンは、ストーリーボード駆動型アプリケーションでは MainStoryboard に設定されます。 ユーザー インターフェイスが完全にコードで書かれている場合は、空白のままにすることができます。

サポートされているデバイスの向き

サポートされているデバイスの向きは、アプリがデバイスの回転にどのように応答するかを制御します。 iPhone/iPad アプリでは、[横向き] のみ、または [上下反転] 以外のすべてをサポートしているのが非常に一般的です。 一般に、ゲームを除くすべての iPad アプリケーションでは、すべての向きをサポートする必要があります。

ステータス バー スタイル

[ステータス バーのスタイル] セクションは、アプリケーションの UIStatusBarStyle を編集するためのグラフィカル インターフェイスです。

Status Bar Styles

アイコン、イメージの起動、iTunes アートワーク

Info.plist ファイルでアイコン、イメージ、アートワークを使用するための情報については、イメージの処理に関するガイドを参照してください。

マップ統合モードとバックグラウンド モード

Info.plist セクションには、マップ統合モードとバックグラウンド モードを指定するための特別なセクションが含まれています。 サポートするオプションを選択すると、必要なプロパティがアプリケーションに追加されます。

Maps Integration

マップの操作に関する詳細については、Xamarin の iOS のマップに関するガイドを参照してください。

Background Modes

バックグラウンド モードの詳細については、Xamarin の iOS でのバックグラウンド処理に関するガイドを参照してください。

詳細設定パネル

詳細設定パネルは、アプリケーションでサポートされるドキュメントの種類と URL スキームを制御します。

Advanced Panel

ドキュメントの種類

特定の種類のファイルを開くことをサポートするアプリケーションの場合、iOS は CFBundleDocumentTypes キーを提供します。 アプリケーションで特定の既知のファイルの種類 (PDF など) をサポートする場合は、PDF 値をキーに追加します。 このセクションでは、Info.plist ファイル内の CFBundleDocumentTypes キーに格納されるデータを入力する便利な方法について説明します。

これらの値を構成する方法の詳細については、アプリでサポートされるファイルの種類の登録に関するドキュメントを参照してください。

UTI

場合によっては、アプリケーションでカスタム ファイルの種類を開くことをサポートする必要があります。 たとえば、カスタム拡張子 .xam を持つイメージ ファイルを開く必要がある場合があります。 カスタム ファイルの種類を指定するには、UIExportedTypeDeclarations キーを使用してカスタム UTI (Universal Type Identifier) を作成します。 以下のスクリーンショットは、.xam 拡張機能のカスタム UTI を作成する方法を示しています。

UTIs Editor

エクスポートされた型の UTI でアプリに固有のカスタム UTI が指定されるのと同様に、インポートされた型の UTI (UIImportedTypeDeclarations キー) では、アプリケーションでサポートされているが所有されていないカスタム型が指定されます。

カスタム UTI の使用に関する詳細については、Apple のアプリでサポートされるファイルの種類の登録に関するガイドを参照してください。

カスタム URL

URL スキーム名 (プロトコルとも呼ばれます) は、URL の最初の部分です。 たとえば、http://https:// は一般的な URL スキームです。 アプリケーション用にカスタム URL スキームを作成するオプションがあります。 カスタム URL スキームは、他のアプリケーションとの通信やデータの送受信に使用されます。 次のスクリーンショットは、monkeys:// と呼ばれる新しいカスタム URL スキームの作成を示しています。

Custom URLs

カスタム URL スキームの実装に関する詳細については、Apple のこのガイドの「カスタム URL スキームの実装」セクションを参照してください。

ソース パネル

Info.plist ファイルの [ソース] タブでは、カスタム値を追加または編集できます。 Visual Studio for Mac には、最も一般的なプロパティの一覧が用意されています。

Adding a new property from a dropdown

既知のプロパティの場合、次のスクリーンショットに示すように、Visual Studio for Mac には有効な値の一覧が表示されます。

Select a value from a know value list

Visual Studio for Mac では、次に示すようにプロパティの種類も検出されます。

The available property types

オプションのプロパティに関する追加情報については、Apple のアプリ関連リソースのリンクを参照してください。

まとめ

この記事では、グラフィカルエディターと高度な .plist エディターを使用して、一般的なアプリ構成を編集したり、アイコンを指定したり、イメージを起動したりする方法について説明しました。 また、アプリ機能を追加し、管理するための Entitlements.plist についても説明しました。