<meta-data>

语法:
<meta-data android:name="string"
               android:resource="resource specification"
               android:value="string" />
包含于:
<activity>
<activity-alias>
<application>
<provider>
<receiver>
<service>
说明:
可以向父组件提供的其他任意数据项的名称值对。一个组件元素可以包含任意数量的 <meta-data> 子元素。所有这些子元素的值收集到一个 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 是分配给该项的值。可以通过 Bundle.getInt() 方法从元数据 Bundle 中检索 ID。
android:value
分配给该项的值。下表列出了可以指定为值的数据类型以及组件用于检索这些值的 Bundle 方法:
类型 Bundle 方法
字符串值,使用双反斜线 (\\) 转义字符,例如“\\n”和“\\uxxxxx”表示 Unicode 字符。 getString()
整数值,例如“100 getInt()
布尔值,“true”或“false getBoolean()
颜色值,格式为“#rgb”、“#argb”、“#rrggbb”或“#aarrggbb getInt()
浮点值,例如“1.23 getFloat()
引入于:
API 级别 1