<meta-data>

構文:
<meta-data android:name="string"
               android:resource="resource specification"
               android:value="string" />
上位の要素:
<activity>
<activity-alias>
<application>
<provider>
<receiver>
<service>
説明:
親コンポーネントに提供可能な任意の追加データアイテムの名前と値のペア。コンポーネント要素には任意の数の <meta-data> サブ要素を含めることができます。すべてのサブ要素の値が 1 つの Bundle オブジェクト内に集められ、コンポーネントで PackageItemInfo.metaData フィールドとして利用できます。

通常の値は value 属性で指定します。ただし、リソース ID を値として割り当てるには、代わりに resource 属性を使用します。たとえば次のコードは、@string/kangaroo リソースに格納されているすべての値を名前 "zoo" に割り当てます。

<meta-data android:name="zoo" android:value="@string/kangaroo" />

一方、resource 属性を使用すると、リソースに格納されている値ではなくリソースの数値 ID が "zoo" に割り当てられます。

<meta-data android:name="zoo" android:resource="@string/kangaroo" />

関連データを複数の個別の <meta-data> エントリとして提供しないようにすることを強くおすすめします。コンポーネントに関連付ける複雑なデータがある場合はリソースとして保存し、resource 属性を使用してコンポーネントにその ID を伝えます。

属性:
android:name
アイテムの一意の名前。名前を一意にするには、Java 形式の命名規則("com.example.project.activity.fred" など)を使用します。
android:resource
リソースへの参照。リソースの ID はアイテムに割り当てられた値です。ID は、Bundle.getInt() メソッドでメタデータ バンドルから取得できます。
android:value
アイテムに割り当てられた値。値として割り当てることができるデータタイプ。コンポーネントでこれらの値を取得する場合に使用する Bundle メソッドを次の表に示します。
タイプ Bundle メソッド
文字列値。文字をエスケープするには、2 つのバックスラッシュ(\\)を使用します(Unicode 文字の場合、「\\n」や「\\uxxxxx」など)。 getString()
整数値("100" など)。 getInt()
ブール値("true" または "false")。 getBoolean()
色の値("#rgb"、"#argb"、"#rrggbb"、"#aarrggbb" のいずれかの形式)。 getInt()
浮動少数点値("1.23" など)。 getFloat()
導入時の API レベル:
API レベル 1